DETAILED ACTION
Notice of AIA Status
The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
Response to Amendment
Applicant’s Amendment and remarks dated 2/13/2026 have been considered. Claims 1-20 are pending.
Drawing Objections. The objections to Figs. 2 and 3 are withdrawn in view of the replacement drawings submitted by Applicant.
Claim Objections. The objections to claims 1, 3, 8, 10, 15, and 17 are withdrawn in view of the amendments made to such claims.
Response to Arguments
On page 8 of Applicant’s 2/13/2026 Amendment and remarks, Applicant asserts that no new matter has been added via the claim amendments, and that Fig. 2 and accompanying description provide sufficient written description support.
The examiner agrees that at least Fig. 2 and paras. 0026-0027 provide sufficient written description support for the claim amendments.
On page 8 of Applicant’s 2/13/2026 Amendment and remarks, with respect to the rejections under 35 U.S.C. 101, Applicant argues:
PNG
media_image1.png
150
660
media_image1.png
Greyscale
The examiner respectfully disagrees. While the “ML model” limitations are not abstract ideas, they have been addressed under Step 2A, Prong 2 and Step 2B. Other mental processes have been identified in the claims, and Applicant has not rebutted the finding of such mental processes.
On pages 8-9 of Applicant’s 2/13/2026 Amendment and remarks, with respect to the rejection of independent claims 1, 8, and 15 under 35 U.S.C. 102, Applicant argues:
PNG
media_image2.png
208
656
media_image2.png
Greyscale
The examiner agrees that the BERNAT reference does not explicitly teach this limitation, and therefore the rejections under 35 U.S.C. 102 are withdrawn. However, such limitations are obvious in view of the BERNAT, SHURTLEFF, and IDA references as explained herein, where such new grounds of rejection are necessitated by Applicant’s claim amendments.
The examiner respectfully disagrees with Applicant’s arguments that all dependent claims should be allowed for the same reasons explained with respect to the independent claims.
Claim Rejections - 35 USC § 101
Claims 1-20 are rejected under 35 U.S.C. 101 because the claimed invention is directed to an abstract idea without significantly more.
Regarding Step 1 of the Alice/Mayo framework, Claims 1-7 are directed to a method (a process), Claims 8-14 are directed to a system (a machine), and Claims 15-20 are directed to a non-transitory, computer-readable storage medium (an article of manufacture), which each fall within one of the four statutory categories of inventions.
Regarding Claim 1
Step 2A, prong 1 (Is the claim directed to a law of nature, a natural phenomenon or an abstract idea).
Claim 1 recites the following mental processes, that in each case under the broadest reasonable interpretation, covers performance of the limitation in the mind (including an observation, evaluation, judgment, opinion) or with the aid of pencil and paper but for the recitation of generic computer components (e.g., “computer-implementable method”, “edge devices” “machine learning (ML) model”).
determining ... a thermal compliant policy of the edge devices in a cluster (under the broadest reasonable interpretation, a human such as a datacenter IT operations specialist, can mentally determine a thermal compliant policy for edge devices in a cluster, such as a maximum operating temperature that should not be exceeded)
identifying ... the edge devices by date time stamp, host name, unique ID, server class, workload type, CPU usage, memory usage, disk usage, network usage, power usage, inlet temperature, and outlet temperature (under the broadest reasonable interpretation, a human such as a datacenter IT operations specialist, can mentally identify a type of device using the identifiers claimed herein)
... using the telemetry attributes to predict thermal condition of the edge devices over time (under the broadest reasonable interpretation, a human such as a datacenter IT operations specialist, can mentally predict a thermal condition, such as operating condition, based on telemetry attribute data such as ambient temperatures)
Step 2A, prong 2 (Does the claim recite additional elements that integrate the judicial exception into a practical application?).
The judicial exception is not integrated into a practical application. In particular, the claim recites the additional elements (e.g., “computer-implementable method”, “edge devices” “machine learning (ML) model”) which are recited at a high-level of generality such that they amount to no more than mere instructions to apply the exception using a generic computer component (See MPEP 2106.05(f)).
Regarding the “A computer-implementable method for optimizing overall edge datacenter power and maintaining a compliant thermal state of edge devices comprising” limitation, such limitation amounts to no more than generally linking the use of a judicial exception to a particular technological environment or field of use (applying a machine learning model to predicting temperature of edge computing devices in the datacenter environment or field of use). As explained by the Supreme Court, a claim directed to a judicial exception cannot be made eligible "simply by having the applicant acquiesce to limiting the reach of the patent for the formula to a particular technological use." Diamond v. Diehr, 450 U.S. 175, 192 n.14, 209 USPQ 1, 10 n. 14 (1981). Thus, limitations that amount to merely indicating a field of use or technological environment in which to apply a judicial exception do not integrate a judicial exception into a practical application.
Regarding the “by a machine learning model (ML) model”, “by the ML model”, and “applying the ML model” limitations, such limitations are recited at a high-level of generality and amount to no more than adding the words “apply it” (or an equivalent) with the judicial exception. In particular, the claim only recite the additional elements of a machine learning model. Th additional elements are recited at a high-level of generality and amount to no more than mere instructions to apply the exception using a generic computer component (a machine learning model). Accordingly, these additional elements do not integrate the abstract idea into a practical application because they do not impose any meaningful limits on practicing the abstract idea (See MPEP 2106.05(f)).
Regarding the “receiving by the ML model telemetry attributes of the edge devices of the cluster” limitation, such additional element of a data gathering step is recited at a high level of generality and amounts to extra-solution activity of receiving data, i.e. pre-solution activity of gathering data for use in the claimed process (see MPEP 2106.05(g)).
Regarding the “offloading workload from one edge device to another edge device if predicted thermal condition of one of the edge devices is not within one or more limits of the thermal compliant policy” limitation, such limitation is recited at a high-level of generality and amounts to no more than adding the words “apply it” (or an equivalent) with the judicial exception, because the limitation attempts to cover a solution to an identified problem with no restriction on how the result is accomplished, or provides no description of the mechanism for accomplishing the result (any and all techniques for offloading workloads are covered, without any restriction on how such workload is offloaded). Accordingly, this additional element does not integrate the abstract idea into a practical application because it does not impose any meaningful limits on practicing the abstract idea (See MPEP 2106.05(f)). Moreover, such limitation amounts to extra solution activity because it is a mere nominal or tangential addition to the claim. (see MPEP 2106.05(g)).
Accordingly, at Step 2A, prong two, after considering all claim elements individually and as an ordered combination, it is determined that the claims do not integrate the judicial exception into a practical application.
Step 2B (Does the claim recite additional elements that amount to significantly more than the judicial exception?)
In accordance with Step 2B, the claim does not include additional elements that are sufficient to amount to significantly more that the judicial exception. As discussed above, the additional elements (e.g., “computer-implementable method”, “edge devices” “machine learning (ML) model”) are recited at a high-level of generality such that they amount to no more than mere instructions to apply the exception using a generic computer component (See MPEP 2106.05(f)).
Regarding the “A computer-implementable method for optimizing overall edge datacenter power and maintaining a compliant thermal state of edge devices comprising” limitation, such limitation amounts to no more than generally linking the use of a judicial exception to a particular technological environment or field of use as explained above, which does not amount to significantly more than the judicial exception. MPEP 2106.05(h).
Regarding the “by a machine learning model (ML) model”, “by the ML model”, and “applying the ML model” limitations, such limitations are recited at a high-level of generality and amount to no more than adding the words “apply it” (or an equivalent) with the judicial exception, because the limitation merely provides instructions to implement an abstract idea on a computer, or merely uses a computer as a tool to perform an abstract idea. Accordingly, this additional element does not add significantly more than the judicial exception. (See MPEP 2106.05(f)).
Regarding the “receiving by the ML model telemetry attributes of the edge devices of the cluster” limitation, as discussed above, the additional element of a data gathering step is recited at a high level of generality and amounts to extra-solution activity of receiving data, i.e. pre-solution activity of gathering data for use in the claimed process. The courts have found limitations directed to obtaining information electronically, recited at a high level of generality, to be well-understood, routine, and conventional (see MPEP 2106.05(d)(II), “receiving or transmitting data over a network”, "electronic record keeping," and "storing and retrieving information in memory").
Regarding the “offloading workload from one edge device to another edge device if predicted thermal condition of one of the edge devices is not within one or more limits of the thermal compliant policy” limitation, such limitation is recited at a high-level of generality and amounts to no more than adding the words “apply it” (or an equivalent) with the judicial exception, because the limitation attempts to cover a solution to an identified problem with no restriction on how the result is accomplished, or provides no description of the mechanism for accomplishing the result. Accordingly, this additional element does not add significantly more than the judicial exception. (See MPEP 2106.05(f)). Moreover, this limitation amounts to extra solution activity because it is a mere nominal or tangential addition to the claim (see MPEP 2106.05(g)).
Accordingly, at Step 2B, after considering all claim elements individually and as an ordered combination, it is determined that the claims do not amount to significantly more than the judicial exception.
Regarding Claim 2
Step 2A, Prong 2
Regarding the “wherein the telemetry attributes include one or more of the following: CPU usage with a range of low, medium and high; memory usage with a range of low, medium and high; disk usage with a range of low, medium and high; network usage with a range of low, medium and high; power usage; and operating temperatures, inlet and outlet” limitation, this limitation merely describes the types of data being received and used to train the machine learning model, and therefore such limitation amounts to no more than generally linking the use of a judicial exception to a particular technological environment or field of use. As explained by the Supreme Court, a claim directed to a judicial exception cannot be made eligible "simply by having the applicant acquiesce to limiting the reach of the patent for the formula to a particular technological use." Diamond v. Diehr, 450 U.S. 175, 192 n.14, 209 USPQ 1, 10 n. 14 (1981). Thus, limitations that amount to merely indicating a field of use or technological environment in which to apply a judicial exception do not integrate a judicial exception into a practical application.
Step 2B
Regarding the “wherein the telemetry attributes include one or more of the following: CPU usage with a range of low, medium and high; memory usage with a range of low, medium and high; disk usage with a range of low, medium and high; network usage with a range of low, medium and high; power usage; and operating temperatures, inlet and outlet” limitation, such limitation amounts to no more than generally linking the use of a judicial exception to a particular technological environment or field of use as explained above, which does not amount to significantly more than the judicial exception. MPEP 2106.05(h).
Regarding Claim 3
Step 2A, Prong 2
Regarding the “wherein the ML model is applied with a ML algorithm that includes K-means clustering, support vector machine (SVM), K- nearest neighbors (KNN), stochastic gradient descent (SGD), logistic regression (LR),decision tree (DT), random forest (RF), and multi-layer perceptrons (MLP)” limitation, this limitation merely describes types of machine learning algorithms, and therefore such limitation amounts to no more than generally linking the use of a judicial exception to a particular technological environment or field of use. As explained by the Supreme Court, a claim directed to a judicial exception cannot be made eligible "simply by having the applicant acquiesce to limiting the reach of the patent for the formula to a particular technological use." Diamond v. Diehr, 450 U.S. 175, 192 n.14, 209 USPQ 1, 10 n. 14 (1981). Thus, limitations that amount to merely indicating a field of use or technological environment in which to apply a judicial exception do not integrate a judicial exception into a practical application.
Step 2B
Regarding the “wherein the ML model is applied with a ML algorithm that includes K-means clustering, support vector machine (SVM), K- nearest neighbors (KNN), stochastic gradient descent (SGD), logistic regression (LR),decision tree (DT), random forest (RF), and multi-layer perceptrons (MLP)” limitation, such limitation amounts to no more than generally linking the use of a judicial exception to a particular technological environment or field of use as explained above, which does not amount to significantly more than the judicial exception. MPEP 2106.05(h).
Regarding Claim 4
Step 2A, Prong 1
wherein edge devices are classified by one or more of a date time stamp, host name/unique ID, server class, workload type, CPU usage, memory usage, disk usage, network usage, power usage, inlet temperature, and outlet temperature. (under the broadest reasonable interpretation, a human such as a datacenter IT operations specialist, can mentally classify edge devices according to the criteria claimed by this limitation)
Regarding Step 2A, Prong 2, the claim does not include any additional elements that integrate the judicial exception into a practical application and regarding Step 2B, there are no additional elements recited that amount to significantly more than the judicial exception.
Regarding Claim 5
Step 2A, Prong 1
wherein the telemetry attributes are normalized using min-max normalization. (under the broadest reasonable interpretation, a human can mentally normalize data using a min-max normalization approach)
Regarding Step 2A, Prong 2, the claim does not include any additional elements that integrate the judicial exception into a practical application and regarding Step 2B, there are no additional elements recited that amount to significantly more than the judicial exception.
Regarding Claim 6
Step 2A, Prong 1
wherein workloads are classified as short, medium, and long, based on duration. (under the broadest reasonable interpretation, a human such as a datacenter IT operations specialist, can mentally classify workloads according to the criteria claimed by this limitation)
Regarding Step 2A, Prong 2, the claim does not include any additional elements that integrate the judicial exception into a practical application and regarding Step 2B, there are no additional elements recited that amount to significantly more than the judicial exception.
Regarding Claim 7
Step 2A, Prong 2
Regarding the “wherein the offloading workload is based on either a lower limit or upper limit noncompliance” limitation, such limitation is recited at a high-level of generality and amounts to no more than adding the words “apply it” (or an equivalent) with the judicial exception, because the limitation attempts to cover a solution to an identified problem with no restriction on how the result is accomplished, or provides no description of the mechanism for accomplishing the result (any and all techniques for offloading workloads are covered, without any restriction on how such workload is offloaded, so long as there is an upper or lower limit). Accordingly, this additional element does not integrate the abstract idea into a practical application because it does not impose any meaningful limits on practicing the abstract idea (See MPEP 2106.05(f)). Moreover, such limitation amounts to extra solution activity because it is a mere nominal or tangential addition to the claim. (see MPEP 2106.05(g)).
Step 2B
Regarding the “wherein the offloading workload is based on either a lower limit or upper limit noncompliance” limitation, such limitation is recited at a high-level of generality and amounts to no more than adding the words “apply it” (or an equivalent) with the judicial exception, because the limitation attempts to cover a solution to an identified problem with no restriction on how the result is accomplished, or provides no description of the mechanism for accomplishing the result. Accordingly, this additional element does not add significantly more than the judicial exception. (See MPEP 2106.05(f)). Moreover, this limitation amounts to extra solution activity because it is a mere nominal or tangential addition to the claim (see MPEP 2106.05(g)).
Regarding Claim 8
Step 2A, Prong 1
Claim 8 recites a system that corresponds to the method of claim 1, and therefore the analysis under Step 2A, Prong 1 with respect to claim 1 also applies to this claim 8. While claim 8 recites additional generic computing components (“processor”, “data bus”, “non-transitory, computer-readable storage medium”, “computer program code”, “edge devices”, “machine learning (ML) model”), such additional generic computing components do not change the analysis under Step 2A, Prong 1.
Step 2A, Prong 2
Claim 8 recites a system that corresponds to the method of claim 1, and therefore the analysis under Step 2A, Prong 2 with respect to claim 1 also applies to this claim 8. While claim 8 recites additional generic computing components (“processor”, “data bus”, “non-transitory, computer-readable storage medium”, “computer program code”, “edge devices”, “machine learning (ML) model”), such additional generic computing components do not change the analysis under Step 2A, Prong 2.
Step 2B
Claim 8 recites a system that corresponds to the method of claim 1, and therefore the analysis under Step 2B with respect to claim 1 also applies to this claim 8. While claim 8 recites additional generic computing components (“processor”, “data bus”, “non-transitory, computer-readable storage medium”, “computer program code”, “edge devices”, “machine learning (ML) model”), such additional generic computing components do not change the analysis under Step 2B.
Claims 9-14 depend from claim 8 and correspond to the methods of claims 2-7, respectively, and are each therefore rejected for the same reasons explained above with respect to claim 8 and claims 2-7, respectively.
Regarding Claim 15
Step 2A, Prong 1
Claim 15 recites a non-transitory, computer-readable storage medium that corresponds to the method of claim 1, and therefore the analysis under Step 2A, Prong 1 with respect to claim 1 also applies to this claim 15. While claim 15 recites additional generic computing components (“non-transitory, computer-readable storage medium”, “computer program code”, “edge devices”, “machine learning (ML) model”), such additional generic computing components do not change the analysis under Step 2A, Prong 1.
Step 2A, Prong 2
Claim 15 recites a non-transitory, computer-readable storage medium that corresponds to the method of claim 1, and therefore the analysis under Step 2A, Prong 2 with respect to claim 1 also applies to this claim 15. While claim 15 recites additional generic computing components (“non-transitory, computer-readable storage medium”, “computer program code”, “edge devices”, “machine learning (ML) model”), such additional generic computing components do not change the analysis under Step 2A, Prong 2.
Step 2B
Claim 15 recites a non-transitory, computer-readable storage mediumthat corresponds to the method of claim 1, and therefore the analysis under Step 2B with respect to claim 1 also applies to this claim 15. While claim 15 recites additional generic computing components (“non-transitory, computer-readable storage medium”, “computer program code”, “edge devices”, “machine learning (ML) model”), such additional generic computing components do not change the analysis under Step 2B.
Claims 16-20 depend from claim 15 and correspond to the methods of claims 2-5 and 7, respectively, and are each therefore rejected for the same reasons explained above with respect to claim 15 and claims 2-5 and 7, respectively.
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.
The factual inquiries for establishing a background for determining obviousness under 35 U.S.C. 103 are summarized as follows:
1. Determining the scope and contents of the prior art.
2. Ascertaining the differences between the prior art and the claims at issue.
3. Resolving the level of ordinary skill in the pertinent art.
4. Considering objective evidence present in the application indicating obviousness or nonobviousness.
Claims 1, 4, 8, 11, 15, and 18 are rejected under 35 U.S.C. 103 as being unpatentable over US 20200021502 A1, hereinafter referenced as BERNAT, in view of US 20200177485 A1, hereinafter referenced as SHURTLEFF, and further in view of US 20190237826 A1, hereinafter referenced as IDA.
Regarding Claim 1
BERNAT teaches:
A computer-implementable method for optimizing overall edge datacenter power and maintaining a compliant thermal state of edge devices comprising: (BERNAT, para. 0015: “Referring now to FIG. 1, a system 100 for managing edge workloads as a function of thermal constraints is shown. The system 100 is representative of an edge platform that may include multiple edge networking environments.”;
BERNAT, para. 0023: “In addition, each of the components of the system 100 (e.g., the edge gateway device 114, edge resources 150, 152, 154, edge nodes 180, core data center 190, etc.) may be subject to one or more performance requirements. Such performance requirements may be specified by one or more service level agreements (SLA) or as one or more quality-of-service (QoS) requirements. For example, a QoS requirement may specify a priority for an edge service request to be processed within a given timeframe or that the request is subject to be processed under a given latency. Telemetry data allows an orchestrator (e.g., executing within the edge gateway device 114 or the core data center 190) to analyze workload performance and adjust resource allocation and usage as necessary.”;
BERNAT, para. 0024: “To address this, embodiments presented herein also disclose thermal- and power-aware load balancing SLA and cooling management-based techniques. More specifically, embodiments provide techniques to distribute FaaS function execution between peer edge entities (e.g., across service providers 120, 122, 124 of a given tier) to preserve thermal properties among different edge networking environments.”
Examiner’s Note: BERNAT discloses techniques for balancing thermal and power requirements for edge devices to a core data center environment, where such balancing corresponds to the recited “optimizing overall edge datacenter power” and the thermal requirements correspond to the recited “compliant thermal state of edge devices”)
determining by a machine learning model (ML model) a thermal compliant policy of the edge devices in a cluster; (BERNAT, para. 0040: “Further, in block 312, the device 200 may train the predictive model as a function, in part, of the obtained sensor data (and any additional collected or derived thermal data collected by the device 200). The device 200 may utilize a variety of machine learning and predictive modeling techniques to do so, such as neural networks, Naïve Bayes, k-nearest techniques, and the like.”;
BERNAT, para. 0045: “In block 506, the device 200 may determine thermal requirements associated with the request. For instance, to do so, the device 200 may evaluate the underlying service and identify resources required by the edge entity to execute the function. The device 200 may correlate an amount of thermal output and energy required to execute the function relative to other processes executing by the edge entity within a time period specified in the request.”;
BERNAT, para. 0047: “If either blocks 508 or 510 result in the negative (i.e., either resources are not available or thermal and power criteria are not satisfied), then the method 500 proceeds to block 516, in which the device 200 selects, based on an evaluation of the previously generated heat map, an edge entity that satisfies the resource requirements and thermal and power criteria.”;
Examiner’s Note: the “thermal requirements” and “thermal criteria” that must be met by an edge device in order to process a request correspond to the recited “thermal compliant policy of the edge devices”, where as shown in Fig. 1, each of the edge resources 150, 152, and 154 is a separate cluster of edge computing devices and sensors, and where device 200 uses machine learning techniques to perform functions)
receiving by the ML model telemetry attributes of the edge devices of the cluster; (BERNAT, para. 0022: “Thermal telemetry data may be collected from each of the edge resources to identify a thermal load on the resources. It is desirable to use thermal telemetry data for effective resource allocation and “cost of execution” attribution in a SLA.”;
BERNAT, para. 0023: “Telemetry data allows an orchestrator (e.g., executing within the edge gateway device 114 or the core data center 190) to analyze workload performance and adjust resource allocation and usage as necessary.”
BERNAT, para. 0024: “In an embodiment, the monitored thermal telemetry and energy properties (e.g., thermal load, historical temperature values, cooling capacity, and so on) may be collected over time to generate a predictive model using various classification and predictive modeling techniques. Doing so allows a given edge entity to estimate thermal properties and energy constraints over a given amount of time (e.g., over an hour, six hours, twenty-four hours, and so on).”
BERNAT, para. 0040: “Further, in block 312, the device 200 may train the predictive model as a function, in part, of the obtained sensor data (and any additional collected or derived thermal data collected by the device 200). The device 200 may utilize a variety of machine learning and predictive modeling techniques to do so, such as neural networks, Naïve Bayes, k-nearest techniques, and the like.”;
Examiner’s Note: the orchestrator receives thermal telemetry data from each of the edge devices)
applying the ML model using the telemetry to predict thermal condition of the edge devices over time; and (BERNAT, para. 0024: “In an embodiment, the monitored thermal telemetry and energy properties (e.g., thermal load, historical temperature values, cooling capacity, and so on) may be collected over time to generate a predictive model using various classification and predictive modeling techniques. Doing so allows a given edge entity to estimate thermal properties and energy constraints over a given amount of time (e.g., over an hour, six hours, twenty-four hours, and so on).”;
BERNAT, para. 0031: “The prediction logic unit 215 may be embodied as any device or circuitry to generate and update predictive models trained by sensor data obtained by the telemetry monitoring logic unit 213 and determined analytics derived from the sensor data, including historical metrics (e.g., for temperature over time). As stated, the predictive models may be used to estimate thermal properties of the edge resources for a given time period.”;
BERNAT, para. 0040: “Further, in block 312, the device 200 may train the predictive model as a function, in part, of the obtained sensor data (and any additional collected or derived thermal data collected by the device 200). The device 200 may utilize a variety of machine learning and predictive modeling techniques to do so, such as neural networks, Naïve Bayes, k-nearest techniques, and the like.”
Examiner’s Note: BERNAT teaches that the predictive models are taught using machine learning techniques to predict thermal properties of the edge resources for a given time period (corresponding to recited “predict thermal condition of the edge devices over time”)
offloading workload from one edge device to another edge device if predicted thermal condition of one of the edge devices is not within one or more limits of the thermal compliant policy. (BERNAT, para. 0024: “To address this, embodiments presented herein also disclose thermal- and power-aware load balancing SLA and cooling management-based techniques. More specifically, embodiments provide techniques to distribute FaaS function execution between peer edge entities (e.g., across service providers 120, 122, 124 of a given tier) to preserve thermal properties among different edge networking environments.”;
BERNAT, para. 0031: “The telemetry monitoring logic unit 213 is also configured to manage thermal telemetry data relative to a SLA associated with the edge resources 150, 152, 154, such as determine whether to execute a FaaS function on a given edge resource or to forward an underlying request to another edge entity.”;
BERNAT, para. 0047: “If either blocks 508 or 510 result in the negative (i.e., either resources are not available or thermal and power criteria are not satisfied), then the method 500 proceeds to block 516, in which the device 200 selects, based on an evaluation of the previously generated heat map, an edge entity that satisfies the resource requirements and thermal and power criteria. Further, in block 518, the device 200 may select the edge entity based on a load balancing technique (e.g., a round robin technique) and on the evaluation. Other factors may include geographic location. In block 520, the device 200 forwards the request to the selected edge entity. If the device 200 determines that the edge entity has available resources and satisfies thermal and power criteria, the device 200 may carry out the function using the edge resources, as indicated in block 512. In block 514, the device 200 may return the result of the executed function to the edge device.”
Examiner’s Note: BERNAT teaches forwarding the task of completing a request from one edge entity to another (corresponding to recited “offloading workload from one edge device to another edge device) based on whether the first edge device satisfies the thermal requirements and criteria)
However, BERNAT fails to explicitly teach:
identifying by the ML model the edge devices by date time stamp, host name, unique ID, server class, workload type, CPU usage, memory usage, disk usage, network usage, power usage, inlet temperature, and outlet temperature.
However, in a related field of endeavor (managing IoT devices, see para. 0001), SHURTLEFF teaches and makes obvious:
identifying by the ML model the edge devices by date time stamp, host name, unique ID, server class, workload type, CPU usage, memory usage, disk usage, network usage, power usage, inlet temperature, and outlet temperature. (SHURTLEFF, para. 0060: “The IoT device data store 222 can store information regarding managed IoT devices, such as an IoT device's name, IP address, MAC address, device type, manufacturer, model, serial number, timestamp of when the device was first detected by the network controller 200, timestamp of when the device was last detected by the network, description, metadata tags, operating system, user, VLAN, geofencing status, and so forth. ... The telemetry data store 226 can store data captured by the telemetry subsystem 210, including network traffic data at various levels of granularity (e.g., packet data, flow data, connection data, session data, etc.) as well as computed statistical information (e.g., bandwidth, throughput, latency, jitter, packet loss, etc.); device and/or application/process data (e.g., CPU usage, memory usage, virtual memory usage, disk space usage, power usage, start time, duration, etc., on a per IoT device basis and/or on a per application/process basis for each IoT device); and/or other device-specific measurement data (e.g., temperature, biotelemetry, motion, etc.). The remediation data store 228 can store data relating to remediation for IoT devices, such as remediation history, device profile information, remediation actions, and so forth.”;
Examiner’s Note: SHURTLEFF discloses device identifiers including timestamp (corresponding to recited “data time stamp”), device name (corresponding to recited “host name”), serial number (corresponding to recited “unique ID”), device type (corresponding to recited “server class”), “CPU usage, memory usage, ... disk space usage, power usage” (corresponding to recited “CPU usage”, “memory usage”, “disk usage” and “power usage”), throughout (corresponding to recited “network usage”), and “network traffic data at various levels of granularity (e.g., packet data, flow data, connection data, session data, etc.)” (corresponding to recited “workload type”));
Examiner’s Note: the BERNAT-SHURTLEFF combination now modifies the prediction model of BERNAT so that it is identifies devices according to the identifiers listed in SHURTLEFF)
Before the effective filing date of the present application, it would have been obvious to combine the system for managing edge computing workloads of BERNAT with the teachings of SHURTLEFF as explained above. As disclosed by SHURTLEFF, one of ordinary skill would have been motivated to do so in order to uniquely identify a device in order to identify the types of access the device may need to operate. (para. 0035).
However, BERNAT and SHURTLEFF fail to explicitly teach:
identifying by the ML model the edge devices by ... inlet temperature, and outlet temperature
However, in a related field of endeavor (cooling electronic devices, see para. 0001), IDA teaches and makes obvious:
identifying by the ML model the edge devices by ... inlet temperature, and outlet temperature (IDA, para. 0015: “ According to one embodiment of the present invention, there is provided a storage battery cooling control method ... the storage battery cooling control method including; ... a second step of calculating the heat exhaust amount of heat exhausted by the cooling device from the cooling air flow rate identified by the cooling air flow rate identification unit, from the temperature detected at the cooling air inlet by the cooling air inlet temperature measurement unit, and from the temperature detected at the cooling air outlet by the cooling air outlet temperature measurement unit”;
Examiner’s Note: IDA discloses separately monitoring cooling air inlet and outlet temperature; the BERNAT-SHURTLEFF-IDA combination now identifies devices by temperature (as in SHURTLEFF) and further in terms of specific inlet and outlet temperatures as in IDA)
Before the effective filing date of the present application, it would have been obvious to combine the system for managing edge computing workloads of BERNAT with the teachings of SHURTLEFF and IDA as explained above. As disclosed by IDA, one of ordinary skill would have been motivated to do so in order to use various metrics in order to calculate a total heat exhaust amount that needs to be addressed. (para. 0043).
Regarding Claim 4
BERNAT, SHURTLEFF, and IDA teach the method of claim 1 as explained above. However, BERNAT fails to explicitly teach:
wherein edge devices are classified by one or more of a date time stamp, host name/unique ID, server class, workload type, CPU usage, memory usage, disk usage, network usage, power usage, inlet temperature, and outlet temperature.
However, in a related field of endeavor (managing IoT devices, see para. 0001), SHURTLEFF teaches and makes obvious:
wherein edge devices are classified by one or more of a date time stamp, host name/unique ID, server class, workload type, CPU usage, memory usage, disk usage, network usage, power usage, inlet temperature, and outlet temperature. (SHURTLEFF, para. 0060: “The IoT device data store 222 can store information regarding managed IoT devices, such as an IoT device's name, IP address, MAC address, device type, manufacturer, model, serial number, timestamp of when the device was first detected by the network controller 200, timestamp of when the device was last detected by the network, description, metadata tags, operating system, user, VLAN, geofencing status, and so forth. ... The telemetry data store 226 can store data captured by the telemetry subsystem 210, including network traffic data at various levels of granularity (e.g., packet data, flow data, connection data, session data, etc.) as well as computed statistical information (e.g., bandwidth, throughput, latency, jitter, packet loss, etc.); device and/or application/process data (e.g., CPU usage, memory usage, virtual memory usage, disk space usage, power usage, start time, duration, etc., on a per IoT device basis and/or on a per application/process basis for each IoT device); and/or other device-specific measurement data (e.g., temperature, biotelemetry, motion, etc.). The remediation data store 228 can store data relating to remediation for IoT devices, such as remediation history, device profile information, remediation actions, and so forth.”;
Examiner’s Note: SHURTLEFF discloses device identifiers including timestamp (corresponding to recited “data time stamp”), device name (corresponding to recited “host name”), serial number (corresponding to recited “unique ID”), device type (corresponding to recited “server class”), “CPU usage, memory usage, ... disk space usage, power usage” (corresponding to recited “CPU usage”, “memory usage”, “disk usage” and “power usage”), throughout (corresponding to recited “network usage”), and “network traffic data at various levels of granularity (e.g., packet data, flow data, connection data, session data, etc.)” (corresponding to recited “workload type”));
Examiner’s Note: the BERNAT-SHURTLEFF combination now modifies the prediction model of BERNAT so that it is classifies devices according to the identifiers listed in SHURTLEFF)
Before the effective filing date of the present application, it would have been obvious to combine the system for managing edge computing workloads of BERNAT with the teachings of SHURTLEFF and IDA as explained above. As disclosed by SHURTLEFF, one of ordinary skill would have been motivated to do so in order to uniquely identify a device in order to identify the types of access the device may need to operate. (para. 0035).
Regarding Claim 8
BERNAT teaches:
A system comprising: a processor; a data bus coupled to the processor; and (BERNAT, para. 0027: “The illustrative device 200 includes a compute engine (also referred to herein as “compute engine circuitry”) 210, an input/output (I/O) subsystem 216, communication circuitry 218, and one or more data storage devices 222. ... In the illustrative embodiment, the compute engine 210 includes or is embodied as a processor 212, a telemetry monitoring logic unit 213, a memory 214, and a prediction logic unit 215. The processor 212 may be embodied as any type of processor capable of performing the functions described herein.”
a non-transitory, computer-readable storage medium embodying computer program code, the non-transitory, computer-readable storage medium being coupled to the data bus, the computer program code interacting with a plurality of computer operations for ...; (BERNAT, para. 0013: “The disclosed embodiments may also be implemented as instructions carried by or stored on a transitory or non-transitory machine-readable (e.g., computer-readable) storage medium, which may be read and executed by one or more processors.”)
The remaining limitations of claim 8 correspond to the method of claim 1, and claim 8 is therefore rejected for the same reasons explained above with respect to claim 1.
Claim 11 depends from claim 8 and claims a system that corresponds to the method of claim 4, and is therefore rejected for the same reasons explained above with respect to claims 4 and 8.
Regarding Claim 15
BERNAT teaches:
A non-transitory, computer-readable storage medium embodying computer program code for..., the computer program code comprising computer executable instructions configured for: (BERNAT, para. 0013: “The disclosed embodiments may also be implemented as instructions carried by or stored on a transitory or non-transitory machine-readable (e.g., computer-readable) storage medium, which may be read and executed by one or more processors.”)
The remaining limitations of claim 15 correspond to the method of claim 1, and claim 15 is therefore rejected for the same reasons explained above with respect to claim 1.
Claim 18 depends from claim 15 and claims a non-transitory, computer-readable storage medium that corresponds to the method of claim 4, and is therefore rejected for the same reasons explained above with respect to claims 4 and 15.
Claims 2, 9, and 16 are rejected under 35 U.S.C. 103 as being unpatentable over BERNAT in view of SHURTLEFF and IDA and further in view of US 20220019887 A1, hereinafter referenced as BUGGINS.
Regarding Claim 2
BERNAT, SHURTLEFF, and IDA teach the method of claim 1 as explained above. However, BERNAT, SHURTLEFF, and IDA fail to explicitly teach:
wherein the telemetry attributes include one or more of the following: CPU usage with a range of low, medium and high; memory usage with a range of low, medium and high; disk usage with a range of low, medium and high; network usage with a range of low, medium and high; power usage; and operating temperatures, inlet and outlet.
However, in a related field of endeavor (training machine learning models with respect to computer network data, see para. 0001), BUGGINS teaches:
wherein the telemetry attributes include one or more of the following: CPU usage with a range of low, medium and high; memory usage with a range of low, medium and high; disk usage with a range of low, medium and high; network usage with a range of low, medium and high; power usage; and operating temperatures, inlet and outlet. (BUGGINS, para. 0104: “It should be noted that the features (change properties) are not limited to the three features mentioned and may include other metadata/properties, such as, but not limited to: geographical location, CPU percentage usage, RAM percentage usage, CPU temperature etc. For example, CPU usage could be categorized as “High”, “Medium” or “Low” usage and then be one-hot encoded as “High”=001, “Medium”=010 or “Low”=100. “High” usage for the CPU could be, >75%, >80%, >85%, or any other percentage which one skilled in the art would be able to derive. Similarly, a CPU usage of <50%, <45%, <40% could be “Low” CPU usage. Alternatively, CPU usage could be categorized on a scale of 0% to 100% in steps of 1%, 5%, 10%, 20% etc.”;
Examiner’s Note: the BERNAT-SHURTLEFF-IDA-BUGGINS combination now modifies the prediction model of BERNAT so that it is further trained using the CPU or RAM usage data of BUGGINS, that in each case is categorized using “high”, “medium”, or “low” usage)
Before the effective filing date of the present application, it would have been obvious to combine the system for managing edge computing workloads of BERNAT with the teachings of SHURTLEFF, IDA, and BUGGINS as explained above. As disclosed by BUGGINS, one of ordinary skill would have been motivated to do so in order to encode GPU or RAM usage data in a one-hot vector format to save on storage space. (see para. 0104).
Claim 9 depends from claim 8 and claims a system that corresponds to the method of claim 2, and is therefore rejected for the same reasons explained above with respect to claims 2 and 8.
Claim 16 depends from claim 15 and claims a non-transitory, computer-readable storage medium that corresponds to the method of claim 2, and is therefore rejected for the same reasons explained above with respect to claims 2 and 15.
Claims 3, 10, and 17 are rejected under 35 U.S.C. 103 as being unpatentable over BERNAT in view of SHURTLEFF and IDA and further in view of US 20220406292 A1, hereinafter referenced as BRATT.
Regarding Claim 3
BERNAT, SHURTLEFF, and IDA teach the method of claim 1 as explained above. However, BERNAT, SHURTLEFF, and IDA fail to explicitly teach:
wherein the ML model is applied with a ML algorithm that includes K-means clustering, support vector machine (SVM), K-nearest neighbors (KNN), stochastic gradient descent (SGD), logistic regression (LR),decision tree (DT), random forest (RF), and multi-layer perceptrons (MLP).
However, in a related field of endeavor (artificial intelligence, see para. 0006), BRATT teaches:
wherein the ML model is applied with a ML algorithm that includes K-means clustering, support vector machine (SVM), K-nearest neighbors (KNN), stochastic gradient descent (SGD), logistic regression (LR),decision tree (DT), random forest (RF), and multi-layer perceptrons (MLP). (BRATT, para. 0006: “Several types of Artificial Intelligence disciplines exist such as robotic artificial intelligence, natural language processing artificial intelligence, machine learning including deep learning artificial intelligence, fuzzy logic artificial intelligence, etc. ... In addition, there are many machine learning algorithms within that machine learning algorithm category, such as: 1—Clustering Algorithms (e.g. Hierarchical Clustering, k-Means, etc.); 2—Association Rule Learning Algorithms (e.g. Apriori algorithm, Eclat algorithm, etc.); 3—Neural Network Algorithms (e.g. Perceptron algorithm, Multilayer Perceptrons (MLP) algorithm, Back-Propagation algorithm, Stochastic Gradient Descent algorithm, Hopfield Network algorithm, Radial Basis Function Network (RBFN) algorithm, Deep Learning Neural Network Algorithms—Convolutional Neural Network (CNN), Recurrent Neural Networks (RNNs), Long Short-Term Memory Networks (LSTMs), Stacked Auto-Encoders, Deep Boltzmann Machine (DBM), Deep Belief Networks (DBN), etc. -); ... 8—Regression Algorithms (e.g. Linear Regression, Logistic Regression, etc.); 9—Instance-based Algorithms (e.g. k-Nearest Neighbor (kNN), Self-Organizing Map (SOM), Support Vector Machines (SVM), etc.); 10—Ensemble Algorithms (e.g. Boosting, Stacked Generalization, Random Forest, etc.); and more yet to be listed.”;
Examiner’s Note: the BERNAT-SHURTLEFF-IDA-BRATT combination now modifies the prediction model of BERNAT so that it is further trained using one or more of the types of machine learning algorithms disclosed by BRATT)
Before the effective filing date of the present application, it would have been obvious to combine the system for managing edge computing workloads of BERNAT with the teachings of SHURTLEFF, IDA, and BRATT as explained above. As disclosed by BRATT, one of ordinary skill would have been motivated to do so in order to utilize one or more well-known algorithms for training artificial intelligence models. (para. 0006).
Claim 10 depends from claim 8 and claims a system that corresponds to the method of claim 3, and is therefore rejected for the same reasons explained above with respect to claims 3 and 8.
Claim 17 depends from claim 15 and claims a non-transitory, computer-readable storage medium that corresponds to the method of claim 3, and is therefore rejected for the same reasons explained above with respect to claims 3 and 15.
Claims 5, 12, and 19 are rejected under 35 U.S.C. 103 as being unpatentable over BERNAT in view of SHURTLEFF and IDA, and further in view of US 20230047295 A1, hereinafter referenced as MARTINEZ.
Regarding Claim 5
BERNAT, SHURTLEFF, and IDA teach the method of claim 1 as explained above. However, BERNAT, SHURTLEFF, and IDA fail to explicitly teach:
wherein the telemetry attributes are normalized using min-max normalization.
However, in a related field of endeavor (predicting workload performance, see para. 0001), MARTINEZ teaches:
wherein the telemetry attributes are normalized using min-max normalization. (MARTINEZ, para. 0060: “At block 430, the telemetry data is processed. According to one embodiment, telemetry samples (e.g., in the form of time-series data points) may be prepared for use by a prediction unit (e.g., prediction unit 122). The generation of telemetry samples from the collected telemetry data may include data cleaning (e.g., substituting missing values with dummy values, substituting the missing numerical values with mean figures, etc.), feature engineering (e.g., the creating of new features out of existing ones), and/or data rescaling (e.g., min-max normalization, decimal scaling, etc.).”;
Examiner’s Note: the BERNAT-SHURTLEFF-IDA-MARTINEZ combination now modifies the prediction model of BERNAT so that telemetry attributes used at training and inference are normalized using min-max normalization as disclosed by MARTINEZ).
Before the effective filing date of the present application, it would have been obvious to combine the system for managing edge computing workloads of BERNAT with the teachings of SHURTLEFF, IDA, and MARTINEZ as explained above. As disclosed by MARTINEZ, one of ordinary skill would have been motivated to do so in order to pre-process, clean, and normalize data prior to submission to the prediction engine, to improve consistency of the model. (para. 0060).
Claim 12 depends from claim 8 and claims a system that corresponds to the method of claim 5, and is therefore rejected for the same reasons explained above with respect to claims 5 and 8.
Claim 19 depends from claim 15 and claims a non-transitory, computer-readable storage medium that corresponds to the method of claim 5, and is therefore rejected for the same reasons explained above with respect to claims 5 and 15.
Claims 6 and 13 are rejected under 35 U.S.C. 103 as being unpatentable over BERNAT in view of SHURTLEFF and IDA and further in view of US 20160077871 A1, hereinafter referenced as KAPLAN.
Regarding Claim 6
BERNAT, SHURTLEFF, and IDA teach the method of claim 1 as explained above. However, BERNAT, SHURTLEFF, and IDA fail to explicitly teach:
wherein workloads are classified as short, medium, and long, based on duration.
However, in a related field of endeavor (systems management of processing devices, see para. 0016), KAPLAN teaches:
wherein workloads are classified as short, medium, and long, based on duration. (KAPLAN, para. 0055: “Policy decisions made by the data center controller 905 may include workload consolidation and migration decisions. For example, if the predicted durations of workloads on the data servers 901-903 are of a short or medium length (e.g., as indicated by respective thresholds) and their active phases are mostly at different times, the workloads can be consolidated to a smaller number of data servers 901-903 to maximize resource utilization of the data servers 901-903. ... For another example, if the predicted durations of the workloads on the data servers 901-903 are predicted to be relatively long and resource demand is predicted to be high, then the workload can be run on a standalone server or de-consolidated by spreading the workloads out to a larger number of data servers 901-903 to meet quality of service requirements. Predicted durations of the active period may also be used to decide whether to migrate a workload when the nature of usage of the data center 900 transitions from a low activity phase to a high activity phase.”;
Examiner’s Note: the BERNAT-SHURTLEFF-IDA-KAPLAN combination now modifies the prediction model of BERNAT so that workload durations are classified as short, medium, or long as in KAPLAN)
Before the effective filing date of the present application, it would have been obvious to combine the system for managing edge computing workloads of BERNAT with the teachings of SHURTLEFF, IDA, and KAPLAN as explained above. As disclosed by KAPLAN, one of ordinary skill would have been motivated to do so in order to allocate “long” duration workloads so they are spread across multiple data sources in order to meet quality of service requirements. (para. 0055).
Claim 13 depends from claim 8 and claims a system that corresponds to the method of claim 6, and is therefore rejected for the same reasons explained above with respect to claims 6 and 8.
Claims 7, 14, and 20 are rejected under 35 U.S.C. 103 as being unpatentable over BERNAT in view of SHURTLEFF and IDA, and further in view of US 20190208007 A1, hereinafter referenced as KHALID.
Regarding Claim 7
BERNAT, SHURTLEFF, and IDA teach the method of claim 1 as explained above. However, BERNAT, SHURTLEFF, and IDA fail to explicitly teach:
wherein the offloading workload is based on either a lower limit or upper limit noncompliance.
However, in a related field of endeavor (edge computing systems, see para. 0010), KHALID teaches:
wherein the offloading workload is based on either a lower limit or upper limit noncompliance. (KHALID, para. 0048: “As an example, during operation of client 112, client 112 may call for a task to be executed. Client 112 may determine that current latencies between client device 106 and edge computing device 104 are below a defined threshold and, in response, may offload performance of the task by requesting that the task be performed by speed layer 116 (e.g., by sending a task performance request to edge computing device 104). In certain examples, the defined threshold may correspond to a latency to send the task to a resource (e.g., a GPU) at client device 106, and client 112 may determine that when the latency to send the task to speed layer 116 is not greater than the latency to send the task to a resource at client device 106, client 112 will request that the task be performed by speed layer 116 instead of at client device 106. As another example, client 112 may determine to send a task to speed layer 116 based on a status of resources of client device 106, such as when usage of resources of client device 106 has reached a defined threshold (e.g., when a temperature of a component of client device 106 has reached a defined threshold temperature).”;
Examiner’s Note: the BERNAT-SHURTLEFF-IDA-KHALID combination now modifies the prediction model of BERNAT so that workloads are offloaded from an edge computing device to another device, such as a speed layer, if the edge computing device has reached a defined temperature threshold (corresponding to recited “upper limit noncompliance”))
Before the effective filing date of the present application, it would have been obvious to combine the system for managing edge computing workloads of BERNAT with the teachings of SHURTLEFF, IDA, and KHALID as explained above. As disclosed by KHALID, one of ordinary skill would have been motivated to do so in order to “leverage low-latency data communications and a distributed data-processing architecture to offload performance of select computing tasks of the application to one or more edge computing devices.” (para. 0010). One of ordinary skill would further understand the benefit of offloading workload from an edge computer if such workload would exceed thermal requirements.
Claim 14 depends from claim 8 and claims a system that corresponds to the method of claim 7, and is therefore rejected for the same reasons explained above with respect to claims 7 and 8.
Claim 20 depends from claim 15 and claims a non-transitory, computer-readable storage medium that corresponds to the method of claim 7, and is therefore rejected for the same reasons explained above with respect to claims 7 and 15.
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.
The prior art made of record and not relied upon is considered pertinent to applicant's disclosure.
US 9213540 B1 (Rickey). “ The hardware asset info database 130 may be used to store information associated with hardware assets. In at least one embodiment, the hardware asset info database 132 may include a hardware asset ID, an asset type (e.g., Server, etc.), an asset name, an asset status (e.g., Active, Retiring, etc.), an end state designation, and a timestamp. Further, the hardware asset info database 130 may also include a server type (e.g. Physical, Virtual, etc.), an environment (e.g., Development, Testing, Production, etc.), a data center, a hostname, a DSN name, an IP address, a hardware vendor, a hardware type, a platform (e.g., Mainframe, Client/Server, Cloud, etc.), a server size (e.g., in rack units, etc.), a server power (e.g., in kW, etc.), a serial number, an operating system (OS) type, an OS version, a primary failover, an indicator for whether the hardware asset is shared, an indicator for whether the hardware asset is clustered, a CPU type, a CPU speed (e.g., in MHz, etc.), a number of CPUs (e.g., number of cores, etc.), an amount of local storage (e.g., in GB, etc.), an amount of network storage (e.g., in GB, etc.), and an amount of memory (e.g., in GB, etc.).” (col. 7, lines 4-23).
Any inquiry concerning this communication or earlier communications from the examiner should be directed to MICHAEL C LEE whose telephone number is (571)272-4933. The examiner can normally be reached M-F 12:00 pm - 8:00 pm ET.
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, Omar Fernandez Rivas can be reached at 571-272-2589. 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.
/MICHAEL C. LEE/Examiner, Art Unit 2128