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 .
DETAILED ACTION
This office action is responsive to Applicant’s reply filed on 03/03/2026
Claims 1 – 20 are pending and have been examined; wherein claims 1 – 5, 7 – 17, and 19 – 20 have been amended.
Claims 1 – 20 are being finally rejected.
Response to Amendments
Claim objections for claims 1 – 20 are withdrawn in view of Applicant’s amendments.
35 USC 112(b) rejections for claims 1 – 7 and 15 – 20 are withdrawn in view of Applicant’s amendments.
35 USC 112(d) rejection for claim 4 is withdrawn in view of Applicant’s amendments.
Response to Arguments
Applicants’ arguments with respect to claims 1 – 20 have been considered but are moot in view of the new ground(s) of rejection as necessitated by amendments.
Claim Objections
Claims 1 – 14 are objected to because of the following informalities:
Claim 1
Lin 8; insert --the-- before “causing”
Claims 2 – 7
These claims are dependent claims of claim 1; therefore, they inherit issue(s) of claim 1.
Claim 8
Line 3; remove comma after “a non-transitory”.
Line 9; insert --the-- before “hosting”
Claims 9 – 14
These claims are dependent claims of claim 8; therefore, they inherit issue(s) of claim 8.
Appropriate correction is required.
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 – 13, 15, 17, 19, and 20 are rejected under 35 U.S.C. 103 as being unpatentable over STUMP et al. (Pub. No. US 2023/0046732 A1; hereinafter Stump; IDS filed on 03/14/2025) in view of TABER et al. (Pub. No. US 2023/0281109 A1; hereinafter Taber; IDS filed on 03/14/2025.)
Claim 1
Stump teaches a computer-implemented method comprising:
receiving, by a computing system, a selection of a terminal device having an existing operational configuration and capable of operating in a development mode and a production mode (Stump; Fig. 2; [0048 – 0051] FIG. 2 is a block diagram of an example integrated development environment (IDE) system 202 according to one or more embodiments of this disclosure …
IDE system 202 can include a user interface component 204 including an IDE editor 224, a project generation component 206, a project deployment component 208, a project testing component 210, a collaboration management component 212, one or more processors 218, and memory 220 …
… In some embodiments, user interface component 204 can be configured to communicatively interface with an IDE client that executes on a client device (e.g., a laptop computer, tablet computer, smart phone, etc.) that is communicatively connected to the IDE system 202 …
… Project deployment component 208 can be configured to commission the system project created by the project generation component 206 to appropriate industrial devices (e.g., controllers, HMI terminals, motor drives, AR/VR systems, etc.) for execution …
[0120] Creating hierarchical relationships between automation objects 222 in this manner is a mode of project development supported by the IDE system 202 that serves to define functional aspects of the resulting system project 302 …
[0125] … Alternatively, the user may specify that the edit is only to be applied to subsequently created instances of the automation object 222, such that existing instances of the automation object maintain their existing configurations, while instances created after submission of the edit will reflect the new data logging configuration.);
receiving, by the computing system, a new operational configuration for the terminal device (Stump; Fig. 2; [0049 – 0051] IDE system 202 can include a user interface component 204 including an IDE editor 224, a project generation component 206, a project deployment component 208, a project testing component 210, a collaboration management component 212 …
… In some embodiments, user interface component 204 can be configured to communicatively interface with an IDE client that executes on a client device (e.g., a laptop computer, tablet computer, smart phone, etc.) that is communicatively connected to the IDE system 202 …
… Project deployment component 208 can be configured to commission the system project created by the project generation component 206 to appropriate industrial devices (e.g., controllers, HMI terminals, motor drives, AR/VR systems, etc.) for execution …
[0125] … Alternatively, the user may specify that the edit is only to be applied to subsequently created instances of the automation object 222, such that existing instances of the automation object maintain their existing configurations, while instances created after submission of the edit will reflect the new data logging configuration.);
causing, by the computing system, the terminal device to enter the development mode with the new operational configuration (Stump; Fig. 2; [0049 – 0051] IDE system 202 can include a user interface component 204 including an IDE editor 224, a project generation component 206, a project deployment component 208, a project testing component 210, a collaboration management component 212 …
… In some embodiments, user interface component 204 can be configured to communicatively interface with an IDE client that executes on a client device (e.g., a laptop computer, tablet computer, smart phone, etc.) that is communicatively connected to the IDE system 202 …
… Project deployment component 208 can be configured to commission the system project created by the project generation component 206 to appropriate industrial devices (e.g., controllers, HMI terminals, motor drives, AR/VR systems, etc.) for execution …
[0125] … Alternatively, the user may specify that the edit is only to be applied to subsequently created instances of the automation object 222, such that existing instances of the automation object maintain their existing configurations, while instances created after submission of the edit will reflect the new data logging configuration.), ;
receiving, by the computing system, an indication that the new operational configuration is to be deployed (Stump; [0081] … Upon completion of project development, a user can identify which target devices— including an industrial controller 118, an HMI terminal 114, and a motor drive 710—are to execute or receive these respective aspects of the system project 302. Project deployment component 208 can then translate the controller code defined by the system project 302 to a control program file 702 formatted for execution on the specified industrial controller 118 and send this control program file 702 to the controller 118 (e.g., via plant network 116). Similarly, project deployment component 208 can translate the visualization definitions and motor drive parameter definitions to a visualization application 704 and a device configuration file 708, respectively, and deploy these files to their respective target devices for execution and/or device configuration. And, [0051 & 0125]); and
in response to the indication, by the computing system, formatting the new operational configuration into one or more files usable by the terminal device in the production mode (Stump; [0081] … Upon completion of project development, a user can identify which target devices— including an industrial controller 118, an HMI terminal 114, and a motor drive 710—are to execute or receive these respective aspects of the system project 302. Project deployment component 208 can then translate the controller code defined by the system project 302 to a control program file 702 formatted for execution on the specified industrial controller 118 and send this control program file 702 to the controller 118 (e.g., via plant network 116). Similarly, project deployment component 208 can translate the visualization definitions and motor drive parameter definitions to a visualization application 704 and a device configuration file 708, respectively, and deploy these files to their respective target devices for execution and/or device configuration. And, [0051 & 0125]), and causing the one or more files to be transmitted to the terminal device (Stump; [0167] … One possible communication between a client 2102 and servers 2104 can be in the form of a data packet adapted to be transmitted between two or more computer processes …) with an instruction for the terminal device to enter the production mode operating according to the one or more files (Stump; [0081] … Upon completion of project development, a user can identify which target devices— including an industrial controller 118, an HMI terminal 114, and a motor drive 710—are to execute or receive these respective aspects of the system project 302. Project deployment component 208 can then translate the controller code defined by the system project 302 to a control program file 702 formatted for execution on the specified industrial controller 118 and send this control program file 702 to the controller 118 (e.g., via plant network 116). Similarly, project deployment component 208 can translate the visualization definitions and motor drive parameter definitions to a visualization application 704 and a device configuration file 708, respectively, and deploy these files to their respective target devices for execution and/or device configuration. And, [0051 & 0125].)
But Stump does not explicitly teach causing the terminal device to enter the development mode comprises transmitting, by the computing system, a mode toggle instruction to the terminal device, the mode toggle instruction causing the terminal device to switch from the production mode to the development mode.
However, Taber teaches causing the terminal device to enter the development mode comprises transmitting, by the computing system, a mode toggle instruction to the terminal device, the mode toggle instruction causing the terminal device to switch from the production mode to the development mode (Taber; Fig. 1; [0053] In some implementations, an interface of the data collaboration tool accepts user input specifying sample data for a particular input dataset, and the data collaboration tool may use the sample data during debug mode (development mode) and the input dataset (production data) during production mode …;
[0071] In FIG. 1, data trustee environment 110 includes data collaboration tool 115, which serves as a development platform … In some implementations, data collaboration tool 115 and/or any of the elements illustrated in FIG. 1 are implemented as, incorporated into, or integrated into an application(s), such as a web application … For example, in some implementations, the application(s) comprises a web application that runs in a web browser and/or is hosted at least partially server-side …
Figs. 1 & 2; [0079] … User interface 200 of FIG. 2 is an example interface that data collaboration tool 115 and/or authoring tool 120 may display on the representative's device.
[0094] Returning now to FIG. 2, user interface 200 includes run button 222 and debug button 224. In some implementations, run button 222 triggers (instructions) a deployed pipeline in production mode (e.g., using production mode tool 170 of FIG. 1), and/or debug button 224 triggers (instructions) a pipeline in debug mode (development mode) (e.g., using debug mode tool 160 of FIG. 1). These buttons are just example interface elements that may be used to trigger execution of a particular pipeline or pipelines (e.g., pipeline 240 of FIG. 2, pipelines 520 and 530 of FIG.) in production and/or debug mode …
[0125 – 0127] FIG. 21 illustrates a method 2100 of triggering (instructions) a data pipeline in debug mode (development mode) using sample data received from one or more collaborators (devices used by collaborators) … Initially at block 2110, a group of collaborators is provided access to an electronic representation of a data pipeline that identifies configurable computations over production data of the collaborators without exposing the production data to the collaborators. For example, data collaboration tool 115 of FIG. 1 may provide different accounts with their own workspaces …, collaborator’s device accesses data pipeline via tool 115 in data trustee environment 110. The data trustee environment 110 is implemented in computing environment 2500 of Fig. 25. The environment 2500 comprises cloud, server(s);
At block 2120, sample data associated with the production data is received from one or more of the collaborators. For example, user interface 600 of FIG. 6 may be used to view or edit a sample dataset associated with a particular production dataset …
At block 2130, input is received triggering the data pipeline in debug mode, and at block 2140, in response to the input … For example, debug mode tool 160 of FIG. 1 runs a selected data pipeline over sample data instead of production data for debugging purposes. This way, data privacy pipelines may be tested and debugged on sample data before a contract has been signed, and may be tested and debugged (development mode) during production (production mode) if something goes wrong while running a data pipeline governed by a signed contract, without exposing production data …) collaborator (terminal device) accesses data pipeline. An input triggers the data pipeline in debug mode during production [Wingdings font/0xE0] switching from production mode to development mode [Wingdings font/0xE0] collaborator’s device is also in debug mode
Stump and Taber are in the same analogous art as they are in the same field of endeavor, developing and facilitating a data collaboration. Therefore, it would have been obvious to one with ordinary skill, in the art before the effective filing date of the claimed invention, to allow Stump to switch between production mode and debug mode to test and debug during production since the debug mode can alleviate various burdens during development and/or production as suggested by Taber ([0056].)
Claim 2
Stump also teaches
the existing operational configuration and the new operational configuration are both user interface configurations (Stump; [0092] Industrial object 222 can also include associated HMI objects that can be used by a visualization system (e.g., an HMI application, a 2D or 3D augmented reality or virtual reality system, etc.) to render an animated graphical representation of the asset. These HMI objects can include one or more HMI interface screens designed to render information about the asset (e.g., a reporting screen that renders statistical or operational data for the asset, a screen that renders an animated graphical representation of the asset, etc.), individual graphical objects representing the asset that can be imported into an industrial visualization application, or other such objects.
[0105] … To this end, user interface component 204 can generate and deliver user interfaces to a client device 504 (e.g., via an IDE client 514) that allow the user to browse the available automation objects 222 and submit edits 1102 to selected objects 222 …
[0125] … Alternatively, the user may specify that the edit is only to be applied to subsequently created instances of the automation object 222, such that existing instances of the automation object maintain their existing configurations, while instances created after submission of the edit will reflect the new data logging configuration); and
the method further comprises, while the terminal device is in the development mode with the new operational configuration:
receiving, from the terminal device, a user selection of an interface element (Stump; [0092] Industrial object 222 can also include associated HMI objects that can be used by a visualization system (e.g., an HMI application, a 2D or 3D augmented reality or virtual reality system, etc.) to render an animated graphical representation of the asset. These HMI objects can include one or more HMI interface screens designed to render information about the asset (e.g., a reporting screen that renders statistical or operational data for the asset, a screen that renders an animated graphical representation of the asset, etc.), individual graphical objects representing the asset that can be imported into an industrial visualization application, or other such objects.
[0105] … To this end, user interface component 204 can generate and deliver user interfaces to a client device 504 (e.g., via an IDE client 514) that allow the user to browse the available automation objects 222 and submit edits 1102 to selected objects 222 …); and
transmitting, to the terminal device, (Stump; [0167] … One possible communication between a client 2102 and servers 2104 can be in the form of a data packet adapted to be transmitted between two or more computer processes …) an interface flow responsive to the user selection (Stump; [0092] Industrial object 222 can also include associated HMI objects that can be used by a visualization system (e.g., an HMI application, a 2D or 3D augmented reality or virtual reality system, etc.) to render an animated graphical representation of the asset. These HMI objects can include one or more HMI interface screens designed to render information about the asset (e.g., a reporting screen that renders statistical or operational data for the asset, a screen that renders an animated graphical representation of the asset, etc.), individual graphical objects representing the asset that can be imported into an industrial visualization application, or other such objects.
[0105] … To this end, user interface component 204 can generate and deliver user interfaces to a client device 504 (e.g., via an IDE client 514) that allow the user to browse the available automation objects 222 and submit edits 1102 to selected objects 222 …)
Claim 3
Stump also teaches
determining, by the computing system, differences between the existing operational configuration and the new operational configuration (Stump; [0111] In an example scenario, a developer may choose to modify an existing system project 302 in order to adapt the project 302 for deployment on an automation system having characteristics that deviate from a typical installation, and which necessitate modifications to the system project 302. For example, the system project 302 may be designed to program and configure a type of standardized automation system built to carry out a particular industrial function, and which is installed at multiple locations or facilities of an industrial enterprise. A new installation of this automation system may deviate from standard installations of the system in a number of ways, including but not limited to replacement of one or more devices of the automation system with devices provided by an alternative vendor, addition or omission of a workstation, installation modifications to accommodate physical constraints of the installation location, special control requirements that deviate from standard requirements (e.g., differences in product design, control modifications to accommodate differences in materials or parts used to manufacture the product), or other such deviations. In order to accommodate these changes, the developer may download a local version 3021 of the system project 302 and implement the necessary modifications on the local version 3021. Also see [0049, 0051, 0081, & 0125].);
wherein the formatting the new operational configuration into the one or more files is according to the determined differences (Stump; [0111] In an example scenario, a developer may choose to modify an existing system project 302 in order to adapt the project 302 for deployment on an automation system having characteristics that deviate from a typical installation, and which necessitate modifications to the system project 302. For example, the system project 302 may be designed to program and configure a type of standardized automation system built to carry out a particular industrial function, and which is installed at multiple locations or facilities of an industrial enterprise. A new installation of this automation system may deviate from standard installations of the system in a number of ways, including but not limited to replacement of one or more devices of the automation system with devices provided by an alternative vendor, addition or omission of a workstation, installation modifications to accommodate physical constraints of the installation location, special control requirements that deviate from standard requirements (e.g., differences in product design, control modifications to accommodate differences in materials or parts used to manufacture the product), or other such deviations. In order to accommodate these changes, the developer may download a local version 3021 of the system project 302 and implement the necessary modifications on the local version 3021. Also see [0049, 0051, 0081, & 0125].)
Claim 4
Stump also teaches receiving operational configuration revisions from a developer and a server in communication with a workstation (Stump; Fig. 2; [0049 – 0051] IDE system 202 can include a user interface component 204 including an IDE editor 224, a project generation component 206, a project deployment component 208, a project testing component 210, a collaboration management component 212 …
… In some embodiments, user interface component 204 can be configured to communicatively interface with an IDE client that executes on a client device (e.g., a laptop computer, tablet computer, smart phone, etc.) that is communicatively connected to the IDE system 202 …
[0162] … The remote computer(s) 2048 can be a workstation, a server computer, a router, a personal computer, portable computer, microprocessor-based entertainment appliance, a peer device or other common network node, and typically includes many or all of the elements described relative to the computer 2002, although, for purposes of brevity, only a memory/storage device 2050 is illustrated …)
Claim 5
Stump does not explicitly teach operation in the development mode requires fewer computing resources by the computing system than does operation in the production mode.
However, Taber teaches operation in the development mode requires fewer computing resources by the computing system than does operation in the production mode (Taber; [0143 – 0144] … Furthermore, since sample data is usually a smaller size than production data, running the data pipeline in debug mode over sample data will often consume less compute resources than in production mode.
In any combination of the elements listed above, the data pipeline is under development, and the operations include permitting the collaborators to trigger the data pipeline under development in debug mode without exposing the production data.)
Stump and Taber are in the same analogous art as they are in the same field of endeavor, developing and facilitating a data collaboration. Therefore, it would have been obvious to one with ordinary skill, in the art before the effective filing date of the claimed invention, to disclose operation in development mode requires fewer computing resources than operation in production mode as suggested by Taber ([0143 – 0144].)
Claim 6
Stump also teaches archiving, by the computing system, the existing operation configuration (Stump; [0102] Returning to FIG. 9, an automation object 222 can also include, as an attribute, a historian configuration that defines data generated by the corresponding industrial asset that is to be archived in a data historian. This historian configuration can be referenced by a data historian system or application that executes a portion of the system project 302 to facilitate configuring the data historian system to collect and archive the data items defined by the configuration …)
Claim 7
Stump also teaches
the receiving a sequence of new operational configurations (Stump; [0111] In an example scenario, a developer may choose to modify an existing system project 302 in order to adapt the project 302 for deployment on an automation system having characteristics that deviate from a typical installation, and which necessitate modifications to the system project 302. For example, the system project 302 may be designed to program and configure a type of standardized automation system built to carry out a particular industrial function, and which is installed at multiple locations or facilities of an industrial enterprise. A new installation of this automation system may deviate from standard installations of the system in a number of ways, including but not limited to replacement of one or more devices of the automation system with devices provided by an alternative vendor, addition or omission of a workstation, installation modifications to accommodate physical constraints of the installation location, special control requirements that deviate from standard requirements (e.g., differences in product design, control modifications to accommodate differences in materials or parts used to manufacture the product), or other such deviations. In order to accommodate these changes, the developer may download a local version 3021 of the system project 302 and implement the necessary modifications on the local version 3021. Also see [0049, 0051, 0081, & 0125].); and
the causing the terminal device to enter the development mode with the new operational configuration comprises, in response to each respective new operational configuration of the sequence of the new operational configurations, causing the terminal device to enter the development mode with the respective new operational configuration (Stump; [0097] According to an example testing procedure, project testing component 210 can execute one or more test scripts 1002 associated with respective one or more automation objects 222 against system project 302. Execution of the test scripts 1002 can involve, for example, feeding simulated test inputs 1012 to control code or other elements of system project 302 according to a sequence defined by the test scripts 1002, setting values of digital or analog program variables defined by the system project 302 according to a defined sequence, initiating control routines of the system project 302 according to a defined sequence, testing animation objects or other visualization elements defined by the system project 302, verifying data linkages between control routines, verifying relationships between program elements and drawing elements, confirming that device configuration settings or parameter values are appropriate for a given industrial application being carried out by the system project 302, or otherwise interacting with system project 302 according to testing procedures defined by the test scripts 1002 …)
Claim 8
Stump teaches a server computing system comprising:
a processor; and
a non-transitory, computer-readable memory storing instructions that, when executed by the processor, cause the server computing system to perform operations comprising (Stump; [0049] IDE system 202 can include a user interface component 204 including an IDE editor 224, a project generation component 206, a project deployment component 208, a project testing component 210, a collaboration management component 212, one or more processors 218, and memory 220 …):
transmitting, to a terminal device, an instruction for the terminal device to enter a development mode (Stump; [0167] … One possible communication between a client 2102 and servers 2104 can be in the form of a data packet adapted to be transmitted between two or more computer processes …
Fig. 2; [0049 – 0051] IDE system 202 can include a user interface component 204 including an IDE editor 224, a project generation component 206, a project deployment component 208, a project testing component 210, a collaboration management component 212 …
… In some embodiments, user interface component 204 can be configured to communicatively interface with an IDE client that executes on a client device (e.g., a laptop computer, tablet computer, smart phone, etc.) that is communicatively connected to the IDE system 202 …
… Project deployment component 208 can be configured to commission the system project created by the project generation component 206 to appropriate industrial devices (e.g., controllers, HMI terminals, motor drives, AR/VR systems, etc.) for execution …
[0125] … Alternatively, the user may specify that the edit is only to be applied to subsequently created instances of the automation object 222, such that existing instances of the automation object maintain their existing configurations, while instances created after submission of the edit will reflect the new data logging configuration.);
receiving a user interface portion for test on the terminal device (Stump; [0100] … During testing of the system project 302, project testing component 210 can execute the one or more test scripts 1002 in accordance with each defined test scenario 1004 in sequence in order to comprehensively validate proper operation of the system project 302 across all platforms (control programming, visualization configuration, drawings, device configurations, etc.
[0092] Industrial object 222 can also include associated HMI objects that can be used by a visualization system (e.g., an HMI application, a 2D or 3D augmented reality or virtual reality system, etc.) to render an animated graphical representation of the asset. These HMI objects can include one or more HMI interface screens designed to render information about the asset (e.g., a reporting screen that renders statistical or operational data for the asset, a screen that renders an animated graphical representation of the asset, etc.), individual graphical objects representing the asset that can be imported into an industrial visualization application, or other such objects.
[0105] … To this end, user interface component 204 can generate and deliver user interfaces to a client device 504 (e.g., via an IDE client 514) that allow the user to browse the available automation objects 222 and submit edits 1102 to selected objects 222 …);
hosting the user interface portion for display on the terminal device while the terminal device is in the development mode (Stump; [0086] …An example private cloud platform can comprise a set of servers hosting the IDE services 802 and residing on a corporate network protected by a firewall), ;
receiving a confirmation of the user interface portion (Stump; [0097] … Execution of the test scripts 1002 can involve, for example, feeding simulated test inputs 1012 to control code or other elements of system project 302 according to a sequence defined by the test scripts 1002, setting values of digital or analog program variables defined by the system project 302 according to a defined sequence, initiating control routines of the system project 302 according to a defined sequence, testing animation objects or other visualization elements defined by the system project 302 … confirming that device configuration settings or parameter values are appropriate for a given industrial application being carried out by the system project 302, or otherwise interacting with system project 302 according to testing procedures defined by the test scripts 1002 …); and
in response to the confirmation, packaging and transmitting the user interface portion to the terminal device for installation on the terminal device (Stump; [0158] … Similarly, operating system 2030 can support containers, and application programs 2032 can be in the form of containers, which are lightweight, standalone, executable packages of software that include, e.g., code, runtime, system tools, system libraries and settings for an application.
[0167] … One possible communication between a client 2102 and servers 2104 can be in the form of a data packet adapted to be transmitted between two or more computer processes …
[0111] In an example scenario, a developer may choose to modify an existing system project 302 in order to adapt the project 302 for deployment on an automation system having characteristics that deviate from a typical installation, and which necessitate modifications to the system project 302. For example, the system project 302 may be designed to program and configure a type of standardized automation system built to carry out a particular industrial function, and which is installed at multiple locations or facilities of an industrial enterprise …)
But Stump does not explicitly teach hosting the user interface portion comprises providing development mode logic that determines interface responses to user inputs received at the terminal device during the development mode.
However, Taber teaches hosting the user interface portion comprises providing development mode logic that determines interface responses to user inputs received at the terminal device during the development mode (Taber; Fig. 1; [0053] In some implementations, an interface of the data collaboration tool accepts user input specifying sample data for a particular input dataset, and the data collaboration tool may use the sample data during debug mode (development mode) and the input dataset (production data) during production mode …;
[0071] In FIG. 1, data trustee environment 110 includes data collaboration tool 115, which serves as a development platform … In some implementations, data collaboration tool 115 and/or any of the elements illustrated in FIG. 1 are implemented as, incorporated into, or integrated into an application(s), such as a web application … For example, in some implementations, the application(s) comprises a web application that runs in a web browser and/or is hosted at least partially server-side …
[0094] Returning now to FIG. 2, user interface 200 includes run button 222 and debug button 224. In some implementations, run button 222 triggers a deployed pipeline in production mode (e.g., using production mode tool 170 of FIG. 1), and/or debug button 224 triggers a pipeline in debug mode (development mode) (e.g., using debug mode tool 160 of FIG. 1) … Generally a user interface may accept user input specifying (logic) sample data to use in lieu of a particular input dataset (production data) or as an input into a particular computational step, and the sample data may be used during debug mode …
[0097] … In some implementations, setting 710 (or some other setting on user interface 700 or elsewhere) accepts user input specifying (logic) a storage location to save a particular diagnostic log, and may include separate settings (logic) for saving a sample log generated in debug mode and for saving a production log generated in production mode. In some implementations, a user may be permitted to enable, designate, generate, and/or export (logic) diagnostic logs generated during debug mode, and may be permitted to enable, designate, and/or generate (logic) diagnostic logs generated during production mode without exporting or exposing their contents …)
Stump and Taber are in the same analogous art as they are in the same field of endeavor, developing and facilitating a data collaboration. Therefore, it would have been obvious to one with ordinary skill, in the art before the effective filing date of the claimed invention, to allow Stump to switch between production mode and debug mode to test and debug during production since the debug mode can alleviate various burdens during development and/or production as suggested by Taber ([0056].)
Claim 9
Stump also teaches
receiving the user interface portion from a user computing device; or
retrieving the user interface portion from a set of stored user interface portions on the server computing system (Stump; [0113] Moreover, when the edits have been implemented on the selected automation object 222, the project generation component 206 also identifies all locally stored and remotely stored versions of any system projects 302 that have incorporated instances of the selected automation object 222. This includes identifying any system projects 302 stored on cloud storage in association with the IDE system 202, as well as any versions 302.sub.1 of the system project 302 that had been downloaded to local client devices (e.g., client device 504b) for local development …)
Claim 10
Stump also teaches
receiving an interface input from the terminal device and, in response, determining an interface navigation (Stump; [0041] … Separately, developers design visualization screens and associated navigation structures for HMIs 114 using an HMI development platform (e.g., executing on client device 122) and download the resulting visualization files to the HMI 114 …; also see [0049, 0051, 0092, 0105, & 0125]), and
instructing the terminal device to perform the interface navigation according to the interface data stored on the terminal device; or
transmitting interface data to the terminal device respective of the interface navigation (Stump; [0041] … Separately, developers design visualization screens and associated navigation structures for HMIs 114 using an HMI development platform (e.g., executing on client device 122) and download the resulting visualization files to the HMI 114 …; also see [0049, 0051, 0092, 0105, & 0125].)
Claim 11
Stump also teaches the packaging the user interface portion comprises generating an executable file (Stump; [0056] …IDE system 202 can identify the appropriate target devices 306 on which respective aspects of the system project 302 should be executed (e.g., industrial controllers, HMI terminals, variable frequency drives, safety devices, etc.), translate the system project 302 to executable files that can be executed on the respective target devices, and deploy the executable files to their corresponding target devices 306 for execution, thereby commissioning the system project 302 to the plant floor for implementation of the automation project. Also [0158 & 0167].)
Claim 12
Stump also teaches
comparing the user interface portion to a prior interface; and
determining how the user interface portion differs from the prior interface (Stump; [0111] In an example scenario, a developer may choose to modify an existing system project 302 in order to adapt the project 302 for deployment on an automation system having characteristics that deviate from a typical installation, and which necessitate modifications to the system project 302. For example, the system project 302 may be designed to program and configure a type of standardized automation system built to carry out a particular industrial function, and which is installed at multiple locations or facilities of an industrial enterprise. A new installation of this automation system may deviate from standard installations of the system in a number of ways, including but not limited to replacement of one or more devices of the automation system with devices provided by an alternative vendor, addition or omission of a workstation, installation modifications to accommodate physical constraints of the installation location, special control requirements that deviate from standard requirements (e.g., differences in product design, control modifications to accommodate differences in materials or parts used to manufacture the product), or other such deviations. In order to accommodate these changes, the developer may download a local version 3021 of the system project 302 and implement the necessary modifications on the local version 3021. Also see [0049, 0051, 0081, & 0125].);
wherein the packaging the user interface portion is according to how the user interface portion differs from the prior interface (Stump; [0056] …IDE system 202 can identify the appropriate target devices 306 on which respective aspects of the system project 302 should be executed (e.g., industrial controllers, HMI terminals, variable frequency drives, safety devices, etc.), translate the system project 302 to executable files that can be executed on the respective target devices, and deploy the executable files to their corresponding target devices 306 for execution, thereby commissioning the system project 302 to the plant floor for implementation of the automation project. Also [0158 & 0167].)
Claim 13
Stump also teaches
hosting an integrated development environment (IDE) (Stump; [0086] …An example private cloud platform can comprise a set of servers hosting the IDE services 802 and residing on a corporate network protected by a firewall.
[0105] … To this end, user interface component 204 can generate and deliver user interfaces to a client device 504 (e.g., via an IDE client 514) that allow the user to browse the available automation objects 222 and submit edits 1102 to selected objects 222 …);
wherein the receiving the user interface portion comprises receiving the user interface portion via the IDE from a workstation in electronic communication with the server computing system (Stump; [0086] …An example private cloud platform can comprise a set of servers hosting the IDE services 802 and residing on a corporate network protected by a firewall.
[0105] … To this end, user interface component 204 can generate and deliver user interfaces to a client device 504 (e.g., via an IDE client 514) that allow the user to browse the available automation objects 222 and submit edits 1102 to selected objects 222 …; Also [0111 & 0162].)
Claim 15
Stump teaches a computing transaction terminal comprising:
a processor; and
a non-transitory computer-readable memory storing instructions that, when executed by the processor, cause the computing transaction terminal to perform operations comprising (Stump; [0049] IDE system 202 can include a user interface component 204 including an IDE editor 224, a project generation component 206, a project deployment component 208, a project testing component 210, a collaboration management component 212, one or more processors 218, and memory 220 …):
receiving an instruction from a server to enter development operational mode (Stump; Fig. 2; [0049 – 0051] IDE system 202 can include a user interface component 204 including an IDE editor 224, a project generation component 206, a project deployment component 208, a project testing component 210, a collaboration management component 212, one or more processors 218, and memory 220 …
… In some embodiments, user interface component 204 can be configured to communicatively interface with an IDE client that executes on a client device (e.g., a laptop computer, tablet computer, smart phone, etc.) that is communicatively connected to the IDE system 202 …
… Project deployment component 208 can be configured to commission the system project created by the project generation component 206 to appropriate industrial devices (e.g., controllers, HMI terminals, motor drives, AR/VR systems, etc.) for execution …
[0125] … Alternatively, the user may specify that the edit is only to be applied to subsequently created instances of the automation object 222, such that existing instances of the automation object maintain their existing configurations, while instances created after submission of the edit will reflect the new data logging configuration.);
in response to the instruction, switching from a production operational mode to a development operational mode, wherein the production operational mode has a different operational configuration than the development operational mode (Stump; Fig. 2; [0049] IDE system 202 can include a user interface component 204 including an IDE editor 224, a project generation component 206, a project deployment component 208, a project testing component 210, a collaboration management component 212, one or more processors 218, and memory 220 …
[0051] … Project deployment component 208 can be configured to commission the system project created by the project generation component 206 to appropriate industrial devices (e.g., controllers, HMI terminals, motor drives, AR/VR systems, etc.) for execution …
[0086] …An example private cloud platform can comprise a set of servers hosting the IDE services 802 and residing on a corporate network protected by a firewall.
[0092] Industrial object 222 can also include associated HMI objects that can be used by a visualization system (e.g., an HMI application, a 2D or 3D augmented reality or virtual reality system, etc.) to render an animated graphical representation of the asset. These HMI objects can include one or more HMI interface screens designed to render information about the asset (e.g., a reporting screen that renders statistical or operational data for the asset, a screen that renders an animated graphical representation of the asset, etc.), individual graphical objects representing the asset that can be imported into an industrial visualization application, or other such objects.
[0105] … To this end, user interface component 204 can generate and deliver user interfaces to a client device 504 (e.g., via an IDE client 514) that allow the user to browse the available automation objects 222 and submit edits 1102 to selected objects 222 …
[0125] … Alternatively, the user may specify that the edit is only to be applied to subsequently created instances of the automation object 222, such that existing instances of the automation object maintain their existing configurations, while instances created after submission of the edit will reflect the new data logging configuration.);
displaying an interface portion under test while in the development operational mode, wherein the interface portion is not included in the operational configuration of the production operational mode (Stump; Fig. 2; [0049] IDE system 202 can include a user interface component 204 including an IDE editor 224, a project generation component 206, a project deployment component 208, a project testing component 210, a collaboration management component 212, one or more processors 218, and memory 220 …
[0051] … Project deployment component 208 can be configured to commission the system project created by the project generation component 206 to appropriate industrial devices (e.g., controllers, HMI terminals, motor drives, AR/VR systems, etc.) for execution …
[0086] …An example private cloud platform can comprise a set of servers hosting the IDE services 802 and residing on a corporate network protected by a firewall.
[0092] Industrial object 222 can also include associated HMI objects that can be used by a visualization system (e.g., an HMI application, a 2D or 3D augmented reality or virtual reality system, etc.) to render an animated graphical representation of the asset. These HMI objects can include one or more HMI interface screens designed to render information about the asset (e.g., a reporting screen that renders statistical or operational data for the asset, a screen that renders an animated graphical representation of the asset, etc.), individual graphical objects representing the asset that can be imported into an industrial visualization application, or other such objects.
[0105] … To this end, user interface component 204 can generate and deliver user interfaces to a client device 504 (e.g., via an IDE client 514) that allow the user to browse the available automation objects 222 and submit edits 1102 to selected objects 222 …
[0125] … Alternatively, the user may specify that the edit is only to be applied to subsequently created instances of the automation object 222, such that existing instances of the automation object maintain their existing configurations, while instances created after submission of the edit will reflect the new data logging configuration.);
receiving an updated one or more files from the server, the updated one or more files include the interface portion in an updated production operational mode operational configuration (Stump; [0052] … Collaboration management component 212 can be configured to track instances of a system project that have been downloaded to local client devices so that these local versions of the project can be updated as needed in response to modifications submitted to the cloud-based IDE system.
[0114] In response to submission of the object edits 1102 and corresponding modification of the master version of the automation object 222 to which the edits 1102 are directed, the project generation component 206 also distributes automation object updates 1402 to all IDE clients 514b on which are stored local versions 302.sub.1 of a system project 302 that uses the automation object 222. The updates 1402 reflect the automation object edits 1102 that were submitted by the developer using client device 504a and, when executed by the local IDE client 514b, update all instances of the automation object 222 in accordance with the edits 1102 …; also see [0049, 0051, 0086, 0092, 0097, 0105, & 0125]); and
switching from the development operational mode to the production operational mode according to the updated one or more files (Stump; Fig. 2; [0049] IDE system 202 can include a user interface component 204 including an IDE editor 224, a project generation component 206, a project deployment component 208, a project testing component 210, a collaboration management component 212, one or more processors 218, and memory 220 …
[0051] … Project deployment component 208 can be configured to commission the system project created by the project generation component 206 to appropriate industrial devices (e.g., controllers, HMI terminals, motor drives, AR/VR systems, etc.) for execution …
[0086] …An example private cloud platform can comprise a set of servers hosting the IDE services 802 and residing on a corporate network protected by a firewall.
[0092] Industrial object 222 can also include associated HMI objects that can be used by a visualization system (e.g., an HMI application, a 2D or 3D augmented reality or virtual reality system, etc.) to render an animated graphical representation of the asset. These HMI objects can include one or more HMI interface screens designed to render information about the asset (e.g., a reporting screen that renders statistical or operational data for the asset, a screen that renders an animated graphical representation of the asset, etc.), individual graphical objects representing the asset that can be imported into an industrial visualization application, or other such objects.
[0105] … To this end, user interface component 204 can generate and deliver user interfaces to a client device 504 (e.g., via an IDE client 514) that allow the user to browse the available automation objects 222 and submit edits 1102 to selected objects 222 …
[0125] … Alternatively, the user may specify that the edit is only to be applied to subsequently created instances of the automation object 222, such that existing instances of the automation object maintain their existing configurations, while instances created after submission of the edit will reflect the new data logging configuration.),
.
But Stump does not explicitly teach the computing transaction terminal comprises a mode toggle module configured to switch the computing transaction terminal between the development operational mode and the production operational mode in response to instructions received from the server.
However, Taber teaches the computing transaction terminal comprises a mode toggle module configured to switch the computing transaction terminal between the development operational mode and the production operational mode in response to instructions received from the server (Taber; Fig. 1; [0053] In some implementations, an interface of the data collaboration tool accepts user input specifying sample data for a particular input dataset, and the data collaboration tool may use the sample data during debug mode (development mode) and the input dataset (production data) during production mode …;
[0071] In FIG. 1, data trustee environment 110 includes data collaboration tool 115, which serves as a development platform … In some implementations, data collaboration tool 115 and/or any of the elements illustrated in FIG. 1 are implemented as, incorporated into, or integrated into an application(s), such as a web application … For example, in some implementations, the application(s) comprises a web application that runs in a web browser and/or is hosted at least partially server-side …
Figs. 1 & 2; [0079] … User interface 200 of FIG. 2 is an example interface that data collaboration tool 115 and/or authoring tool 120 may display on the representative's device.
[0094] Returning now to FIG. 2, user interface 200 (module) includes run button 222 and debug button 224. In some implementations, run button 222 triggers (instructions) a deployed pipeline in production mode (e.g., using production mode tool 170 of FIG. 1), and/or debug button 224 triggers (instructions) a pipeline in debug mode (development mode) (e.g., using debug mode tool 160 of FIG. 1). These buttons are just example interface elements that may be used to trigger execution of a particular pipeline or pipelines (e.g., pipeline 240 of FIG. 2, pipelines 520 and 530 of FIG.) in production and/or debug mode …)
Stump and Taber are in the same analogous art as they are in the same field of endeavor, developing and facilitating a data collaboration. Therefore, it would have been obvious to one with ordinary skill, in the art before the effective filing date of the claimed invention, to allow Stump to switch between production mode and debug mode to test and debug during production since the debug mode can alleviate various burdens during development and/or production as suggested by Taber ([0056].)
Claim 17
This limitation is already discussed in claim 5; therefore, it is rejected for the same reasons.
Claim 19
Stump also teaches
receiving user input in the interface portion under test while in the development operational mode (Stump; Fig. 2; [0049] IDE system 202 can include a user interface component 204 including an IDE editor 224, a project generation component 206, a project deployment component 208, a project testing component 210, a collaboration management component 212, one or more processors 218, and memory 220 …
[0051] … Project deployment component 208 can be configured to commission the system project created by the project generation component 206 to appropriate industrial devices (e.g., controllers, HMI terminals, motor drives, AR/VR systems, etc.) for execution …
[0086] …An example private cloud platform can comprise a set of servers hosting the IDE services 802 and residing on a corporate network protected by a firewall.
[0092] Industrial object 222 can also include associated HMI objects that can be used by a visualization system (e.g., an HMI application, a 2D or 3D augmented reality or virtual reality system, etc.) to render an animated graphical representation of the asset. These HMI objects can include one or more HMI interface screens designed to render information about the asset (e.g., a reporting screen that renders statistical or operational data for the asset, a screen that renders an animated graphical representation of the asset, etc.), individual graphical objects representing the asset that can be imported into an industrial visualization application, or other such objects.
[0105] … To this end, user interface component 204 can generate and deliver user interfaces to a client device 504 (e.g., via an IDE client 514) that allow the user to browse the available automation objects 222 and submit edits 1102 to selected objects 222 …
[0125] … Alternatively, the user may specify that the edit is only to be applied to subsequently created instances of the automation object 222, such that existing instances of the automation object maintain their existing configurations, while instances created after submission of the edit will reflect the new data logging configuration.);
transmitting the user input to the server (Stump; [0167] … One possible communication between a client 2102 and servers 2104 can be in the form of a data packet adapted to be transmitted between two or more computer processes …);
receiving, from the server, an interface navigation responsive to the user input; and displaying the interface navigation (Stump; Fig. 2; [0049] IDE system 202 can include a user interface component 204 including an IDE editor 224, a project generation component 206, a project deployment component 208, a project testing component 210, a collaboration management component 212, one or more processors 218, and memory 220 …
[0051] … Project deployment component 208 can be configured to commission the system project created by the project generation component 206 to appropriate industrial devices (e.g., controllers, HMI terminals, motor drives, AR/VR systems, etc.) for execution …
[0086] …An example private cloud platform can comprise a set of servers hosting the IDE services 802 and residing on a corporate network protected by a firewall.
[0092] Industrial object 222 can also include associated HMI objects that can be used by a visualization system (e.g., an HMI application, a 2D or 3D augmented reality or virtual reality system, etc.) to render an animated graphical representation of the asset. These HMI objects can include one or more HMI interface screens designed to render information about the asset (e.g., a reporting screen that renders statistical or operational data for the asset, a screen that renders an animated graphical representation of the asset, etc.), individual graphical objects representing the asset that can be imported into an industrial visualization application, or other such objects.
[0105] … To this end, user interface component 204 can generate and deliver user interfaces to a client device 504 (e.g., via an IDE client 514) that allow the user to browse the available automation objects 222 and submit edits 1102 to selected objects 222 …
[0125] … Alternatively, the user may specify that the edit is only to be applied to subsequently created instances of the automation object 222, such that existing instances of the automation object maintain their existing configurations, while instances created after submission of the edit will reflect the new data logging configuration.)
Claim 20
Stump also teaches retrieving a further interface portion from a storage of the computing transaction terminal; or
receiving a further interface portion from the server (Stump; Fig. 2; [0049] IDE system 202 can include a user interface component 204 including an IDE editor 224, a project generation component 206, a project deployment component 208, a project testing component 210, a collaboration management component 212, one or more processors 218, and memory 220 …
[0051] … Project deployment component 208 can be configured to commission the system project created by the project generation component 206 to appropriate industrial devices (e.g., controllers, HMI terminals, motor drives, AR/VR systems, etc.) for execution …
[0086] …An example private cloud platform can comprise a set of servers hosting the IDE services 802 and residing on a corporate network protected by a firewall.
[0092] Industrial object 222 can also include associated HMI objects that can be used by a visualization system (e.g., an HMI application, a 2D or 3D augmented reality or virtual reality system, etc.) to render an animated graphical representation of the asset. These HMI objects can include one or more HMI interface screens designed to render information about the asset (e.g., a reporting screen that renders statistical or operational data for the asset, a screen that renders an animated graphical representation of the asset, etc.), individual graphical objects representing the asset that can be imported into an industrial visualization application, or other such objects.
[0105] … To this end, user interface component 204 can generate and deliver user interfaces to a client device 504 (e.g., via an IDE client 514) that allow the user to browse the available automation objects 222 and submit edits 1102 to selected objects 222 …
[0125] … Alternatively, the user may specify that the edit is only to be applied to subsequently created instances of the automation object 222, such that existing instances of the automation object maintain their existing configurations, while instances created after submission of the edit will reflect the new data logging configuration.)
Claims 14 and 18 are rejected under 35 U.S.C. 103 as being unpatentable over Stump and Taber as applied to claims 8 and 15 above, and further in view of KHAN (Pub. No. US 2020/0104825 A1; hereinafter Khan; IDS filed on 03/14/2025.)
Claim 14
Stump teaches
establishing a network connection with the terminal device (Stump; [0049 – 0050] IDE system 202 can include a user interface component 204 including an IDE editor 224, a project generation component 206, a project deployment component 208, a project testing component 210, a collaboration management component 212 …
… In some embodiments, user interface component 204 can be configured to communicatively interface with an IDE client that executes on a client device …
[0085] As noted above, some embodiments of IDE system 202 can be embodied on a cloud platform. FIG. 8 is a diagram illustrating an example architecture in which cloud-based IDE services 802 are used to develop and deploy industrial applications to a plant environment … These industrial assets are connected to a plant network 116 …), network connection was established;
wherein the hosting the user interface portion for display on the terminal device and the transmitting the user interface portion to the terminal device for installation on the terminal device (Stump; Fig. 2; [0049] IDE system 202 can include a user interface component 204 including an IDE editor 224, a project generation component 206, a project deployment component 208, a project testing component 210, a collaboration management component 212, one or more processors 218, and memory 220 …
[0051] … Project deployment component 208 can be configured to commission the system project created by the project generation component 206 to appropriate industrial devices (e.g., controllers, HMI terminals, motor drives, AR/VR systems, etc.) for execution …
[0086] …An example private cloud platform can comprise a set of servers hosting the IDE services 802 and residing on a corporate network protected by a firewall.
[0092] Industrial object 222 can also include associated HMI objects that can be used by a visualization system (e.g., an HMI application, a 2D or 3D augmented reality or virtual reality system, etc.) to render an animated graphical representation of the asset. These HMI objects can include one or more HMI interface screens designed to render information about the asset (e.g., a reporting screen that renders statistical or operational data for the asset, a screen that renders an animated graphical representation of the asset, etc.), individual graphical objects representing the asset that can be imported into an industrial visualization application, or other such objects.
[0105] … To this end, user interface component 204 can generate and deliver user interfaces to a client device 504 (e.g., via an IDE client 514) that allow the user to browse the available automation objects 222 and submit edits 1102 to selected objects 222 …
[0111] In an example scenario, a developer may choose to modify an existing system project 302 in order to adapt the project 302 for deployment on an automation system having characteristics that deviate from a typical installation, and which necessitate modifications to the system project 302 …
[0125] … Alternatively, the user may specify that the edit is only to be applied to subsequently created instances of the automation object 222, such that existing instances of the automation object maintain their existing configurations, while instances created after submission of the edit will reflect the new data logging configuration.)
But Stump and Taber do not explicitly teach a persistent network connection with the terminal device.
However, Khan teaches a persistent network connection with the terminal device (Khan; [0014] In a wireless (e.g., contactless) transaction system, a wireless device, such as, e.g., a mobile phone, may communicate with a wireless transaction device, such as a payment terminal, to conduct a wireless transaction …
[0055] Once the second wireless interfaces 207, 407 have established the persistent wireless connection via Wi-Fi Aware, the wireless transaction SDK 408 of the wireless transaction device 104 transmits, via the persistent wireless connection, session information for the wireless transaction to the wallet application 205 of the electronic device 102 …)
Stump, Taber and Khan are in the same analogous art as they are in the same field of endeavor, facilitating communication and transferring data between devices. Therefore, it would have been obvious to one with ordinary skill, in the art before the effective filing date of the claimed invention, incorporating Khan teaching into Stump/Taber invention to establish persistent network connection between devices, as suggested by Khan ([0055]), since the persistent network connection improves efficiency and performance through reduced latency, fewer resources consumed by frequent connection setup/teardown, and better overall network throughput.
Claim 18
Khan teaches the terminal is a payment terminal (Khan; [0014] In a wireless (e.g., contactless) transaction system, a wireless device, such as, e.g., a mobile phone, may communicate with a wireless transaction device, such as a payment terminal, to conduct a wireless transaction …) Motivation for incorporating Khan into Stump/Taber is the same as motivation in claim 14.
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 CUONG V LUU whose telephone number is (571)270-1733. The examiner can normally be reached 6:30 AM - 3:00 PM.
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, Hyung S. Sough can be reached at (571) 272-6799. 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.
/CUONG V LUU/Examiner, Art Unit 2192
/S. Sough/SPE, Art Unit 2192