CHRONIC PAIN MANAGEMENT THROUGH DIGITAL THERAPY SYSTEM

The digital therapy system collects data about the user from a user device. For example, the digital therapy system may collect data about the user's physical and mental health from the user through the user device. The digital therapy system then generates biomarker characteristics for the user. Biomarker characteristics are characteristics that describe a user's FM. The digital therapy system may generate the biomarker characteristics for a user by applying a biomarker model to data about the user. The digital therapy system can use the biomarker characteristics to determine a treatment plan for the user. A treatment plan is a set of treatment assignments that aid a user in alleviating or coping with symptoms from their FM in accordance with CBT techniques. The digital therapy system may also adjust the treatment plan for the user based on additional data that the digital therapy system receives.

BACKGROUND

Fibromyalgia (FM) is a medical condition where an individual suffers from chronic musculoskeletal pain. Other symptoms of FM may include headaches, fatigue, insomnia, memory issues, or mood issues. FM is often caused by a significant event, such as physical trauma, surgery, an infection, or psychological stress. While there are methods by which individuals with FM can alleviate their conditions, there is currently no cure for FM.

Individuals with FM often struggle to find treatments that manage their conditions. Many pharmacological solutions can be ineffective at addressing pain (such as over-the-counter painkillers) or may not be feasible long-term solutions (such as opioids). Additionally, pharmacological solutions may require a doctor's prescription to obtain, and thus it may be difficult to try different solutions when a current solution is not effective. Furthermore, pharmacological solutions that are effective at addressing a patient's day-to-day pain may not be as effective at addressing a flare-up (i.e, a temporary increase in severity of a user's pain).

Some cognitive behavioral therapy (CBT) techniques may help a patient come to terms with their pain or to lessen their pain through improved mental health. However, conventional CBT techniques may require a therapist or other professional to determine which assignments the individual should complete. A therapist or other professional also often lacks up-to-date information about their patient because they are not in constant communication with their patient. Further, the patient may not always be the best source of information about whether they have completed recommended assignments.

SUMMARY

A digital therapy system provides a customized treatment plan to a user suffering from FM. The digital therapy system collects data about the user from a user device. For example, the digital therapy system may collect data about the user's physical and mental health from the user through the user device. The digital therapy system then generates biomarker characteristics for the user. Biomarker characteristics are characteristics that describe a user's FM. For example, biomarker characteristics may describe the severity of the user's FM, likely triggers for the user's FM to flare up, or even predict whether the user has FM but is not aware of it. The digital therapy system may generate the biomarker characteristics for a user by applying a biomarker model to data about the user. The biomarker model is one or more machine-learning models that have been trained to generate biomarker characteristics for a user based on data about the user.

The digital therapy system can use the biomarker characteristics to determine a treatment plan for the user. A treatment plan is a set of treatment assignments that aid a user in alleviating or coping with symptoms from their FM in accordance with CBT techniques. For example, the treatment plan may include talk therapy sessions, meditation sessions, skill building modules, tasks, or plans for the user. The digital therapy system may also adjust the treatment plan for the user based on additional data that the digital therapy system receives. For example, the digital therapy system may adjust the treatment plan based on a prediction that the user's FM will flare up to minimize the impact on the user of the flare up.

By providing automated, up-to-date, and personalized CBT tasks to a user with FM, the digital therapy system allows a user to more effectively use CBT as a method for managing their FM symptoms, thereby reducing their reliance on pharmacological solutions or therapy sessions with a therapist. Similarly, the digital therapy system can proactively predict whether a user may experience more severe symptoms and recommend preventative tasks for the user to perform, thereby improving the user's quality of life.

DETAILED DESCRIPTION

Figure (FIG.1illustrates an example system environment for a digital therapy system140, in accordance with some embodiments. The system environment illustrated inFIG.1includes a user device100, a provider device110, one or more remote databases120, a network130, and a digital therapy system140. Alternative embodiments may include more, fewer, or different components from those illustrated inFIG.1, and the functionality of each component may be divided between the components differently from the description below. Additionally, each component may perform their respective functionalities in response to a request from a human, or automatically without human intervention. Furthermore, while the description below of the digital therapy system140may focus on FM, other embodiments of the digital therapy system140may assist users with other chronic conditions, like diabetes, arthritis, irritable bowel syndrome, rheumatoid arthritis, osteoarthritis, migraines, back/joint pain, or other chronic pain or autoimmune conditions.

A user can interact with the digital therapy system140through a user device100. The user device100can be a personal or mobile computing device, such as a smartphone, a tablet, a laptop computer, or desktop computer. In some embodiments, the user device100executes a client application that uses an application programming interface (API) to communicate with the digital therapy system140through the network130.

The user device100collects user data from a user. User data is information describing the user that the digital therapy system140uses to determine a treatment plan for a user's FM. The user data may include the user's physical or mental health (e.g., comorbidities, autoimmune diseases, acute physical injury, stress levels), ethnicity, gender or sex, age, the user's personal and family medical history, patient reported outcomes measures or surveys (across mental health status, physical health status, quality of life metrics, disease severity, or others), their diet, their weight, their height, sleep quality or quantity, the user's physical movements or activities, the user's sociability, location data describing the user's location, the user's sensitivity to stimuli (e.g., touch, temperature, or sound), or the user's use of, compliance with, or dosage of past or present medications. User data may include information about the user's pain or other FM symptoms, such as where the user experienced pain, when the user experienced pain, an intensity of pain experienced by the user, a type of pain (e.g., achy, dull, raw, sharp, stabbing, or throbbing), or how the user's pain impacted their ability to partake in normal activities.

User data may also include information about a user's interactions with the digital therapy system140. For example, the user data may include information about how often the user performs recommended treatment assignments, how well the user performs those treatment assignments, which treatment assignments the user is performing, the user's opinions on the treatment assignments, the user's engagement with the treatment assignments, or the user's opinions of their performance of recommended treatment.

In some embodiments, the user device100collects user data by using a user application that operates on the user device100. The user application may automatically collect user data and may collect user data provided directly by the user. Additionally, the user device100may collect user data by connecting with wearable devices (e.g., a smart watch/wristband, fitness trackers, or body-mounted sensors) that the user wears and has connected to the user device.

The provider device110is a device used by a healthcare provider to interact with the digital therapy system140. A healthcare provider is a person or entity who provides healthcare services to the user. Example medical providers include doctors of medicine, doctors of osteopathy, hospitals, clinics, podiatrists, dentists, chiropractors, clinical psychologists, physical therapists, mental health therapists, optometrists, nurse practitioners, or clinical social workers.

The provider device110can be a personal or mobile computing device, such as a smartphone, a tablet, a laptop computer, or desktop computer. In some embodiments, the provider device110executes a client application that uses an application programming interface (API) to communicate with the digital therapy system140through the network130. In some embodiments, the provider device110is one or more computer systems used by the healthcare provider in the performance of their healthcare services.

The provider device110may collect user data about the user held by the provider and transmit the user data to the digital therapy system140. For example, the provider device110may collect the user's medical history held by the medical provider and transmit the medical history to the digital therapy system140. The provider device110may automatically transmit user data to the digital therapy system140.

The provider device110may also provide information from the digital therapy system140to the provider. For example, the provider device110may update the provider with information about how well or how often a user performs their treatment assignments or with information about the user's mental health that the user provides the digital therapy system140. Additionally, the provider may provide messages to the user regarding the user's health using the provider device110by transmitting the messages to the digital therapy system140to be displayed to the user on the user device100.

The digital therapy system140may receive data from one or more remote databases120to determine a treatment plan for a user. For example, the digital therapy system140may receive user data from one or more databases that store user data for the user. Additionally, the remote databases120may include publicly accessible databases to provide data to the public for free or at a cost. For example, the remote databases120may include databases that store anonymized user data from people with FM or other conditions, data from studies conducted on people with FM or other conditions, publicly available databases of people with FM or other conditions, weather data, epidemiologic data, infectious disease data, or GPS data.

The user device100, the provider device110, and the remote databases120communicate with digital therapy system140via the network130, which may comprise any combination of local area and wide area networks employing wired or wireless communication links. In some embodiments, the network130uses standard communications technologies and protocols. For example, the network130includes communication links using technologies such as Ethernet, 802.11, worldwide interoperability for microwave access (WiMAX), 3G, 4G, 5G, code division multiple access (CDMA), digital subscriber line (DSL), etc. Examples of networking protocols used for communicating via the network130include multiprotocol label switching (MPLS), transmission control protocol/Internet protocol (TCP/IP), hypertext transport protocol (HTTP), simple mail transfer protocol (SMTP), and file transfer protocol (FTP). Data exchanged over the network130may be represented using any format, such as hypertext markup language (HTML) or extensible markup language (XML). In some embodiments, all or some of the communication links of the network130may be encrypted.

FIG.1also illustrates an example system architecture of a digital therapy system140, in accordance with some embodiments. The digital therapy system140illustrated inFIG.1includes a data collection module150, a biomarker modeling module160, a treatment planning module170, a treatment communication module180, and a data store190. Alternative embodiments may include more, fewer, or different components from those illustrated inFIG.1, and the functionality of each component may be divided between the components differently from the description below. Additionally, each component may perform their respective functionalities in response to a request from a human, or automatically without human intervention.

The data collection module150collects data used by the digital therapy system140. The data collection module150may collect data from the user device100, the provider device110, and the remote databases120. For example, the data collection module150may collect user data from the user device100. The data collection module150also may collect data based on a user's interactions with the digital therapy system140. For example, the data collection module150may collect responses provided by the user to the digital therapy system140as part of treatment assignments or may collect data describing the user's performance of treatment assignments. The data collection module150stores collected data in the data store190.

The biomarker modeling module160applies one or more biomarker models to determine biomarker characteristics of the user. Biomarker characteristics are characteristics that describe a user's FM and associated health status. For example, biomarker characteristics may include a user's likelihood of having FM, characteristics of a user's diagnosis of FM, a likelihood of a user experiencing symptoms of FM within a timeframe, or the severity of a user's FM or components of FM or other relevant disease metrics (e.g. depression, anxiety), or status of behavioral therapy related metrics (e.g. mindfulness, psychological flexibility).

A biomarker model is a machine learning model (e.g., a neural network) that is trained to determine biomarker characteristics of a user based on user data associated with the user. For example, a biomarker model may be trained to predict the severity of a user's FM symptoms within a 24-hour period based on historical data of the user's FM symptoms. A biomarker model may be trained to correlate user data with other data to determine biomarker characteristics of a user. For example, a biomarker model may be trained to correlate data about the weather and data about a user's recent physical activity to predict whether a user is likely to experience a flareup in FM symptoms. A biomarker model may also predict biomarker characteristics for a user based on treatments that the user has been provided by the digital therapy system140. For example, a biomarker model may predict a lower severity of a user's FM symptoms if the user has completed a set of treatment assignments.

The biomarker modeling module160trains biomarker models based on training data. Training data for a biomarker model may include user data describing information about a user, historical weather data, location data, or data from studies conducted by third parties. The user data may describe user symptoms over time, user activity, user medical history, user medications and medication adherence, user sleep data, user psychological inflexibility (e.g., the user's pain acceptance or level of mindfulness), user kinesiophobia, or user sociability. The user data may be collected based on user reported surveys collected from the user.

In some embodiments, the user's sociability is measured based on a number of wireless networks that the user device100interacts with. For example, a client application operating on the user device100may detect when the user device100interacts with a wireless network, such as a WiFi network or a Bluetooth network. The client application may collect data describing the number of times the user device100connects with a new wireless network within a time period as a measure of how sociable the user has been within that time period, and may thereby use that data to train the biomarker model.

In some embodiments, a biomarker model is trained based on user data from multiple users of the digital therapy system140. In these embodiments, the biomarker model may be trained to make predictions about the biomarker characteristics of one user based on data about similar users. For example, a biomarker model may predict a severity of a user's FM symptoms based on other users with similar characteristics (e.g., age, sex, physical conditioning, medical history, or activity level) to the user.

In some embodiments, the training data includes labels for training examples that are used to train a biomarker model. For example, training data may include a set of training examples, where each example includes user data for a user. Each training example may be labeled with a severity score describing a user's severity of FM symptoms, or may be labeled with a likelihood score describing a likelihood that a user has FM based on the user data.

In some embodiments, the training data for a biomarker model may be preprocessed. For example, the biomarker modeling module160may featurize the training data, normalize the training data, remove training examples that are missing important pieces of information, anonymize the training data, or remove anomalous training data. The biomarker modeling module160may apply weights to different training examples in the training data based on a target user demographic for the digital therapy system140. For example, the biomarker modeling module160may apply weights to emphasize training examples for users who most commonly use the digital therapy system140, or may apply weights for users who do not commonly use the digital therapy system140and for whom the digital therapy system140lacks sufficient training data.

In some embodiments, to train a biomarker model, the biomarker modeling module160generates feature sets or embeddings based on the training data. For example, the biomarker modeling module160may generate an embedding based on user data, an embedding based on weather data, and an embedding based on treatment assignments performed by the user, and these embedding may be used to train a biomarker model.

In some embodiments, the biomarker modeling module160may retrain a biomarker model based on new data received by the digital therapy system140in the course of providing treatment to a user. For example, if a biomarker model predicts that a user will have more severe symptoms than normal during a particular timeframe, but the user reports regular or low symptoms during that timeframe, the biomarker modeling module160may retrain the biomarker model based on user data from that time period.

The biomarker modeling module160may receive training data from the user device100, the provider device110, or the remote databases120. The training data also may include data from users of the digital therapy system140or may include data from other individuals with FM.

In some embodiments, the biomarker modeling module160predicts possible triggers that may cause a user's FM to flare up. For example, the biomarker modeling module160may receive user data describing a user's motion activity for a day and may predict whether a user is likely to experience a flare up within the next 24 hours based on the user's motion activity. Similarly, the biomarker modeling module160may determine that weather in the area near a user is likely to negatively impact the user's mental health, which may cause the user's FM to flare up. In some embodiments, the biomarker modeling module160may determine a likelihood that a user will experience a flare-up within a time period, and may approximate how severe the flare-up will likely be. In some embodiments, the biomarker modeling module160generates a flareup model for each user based on the respective user's data describing when the user experiences a flareup.

In some embodiments, the biomarker modeling module160determines a likelihood that the user has undiagnosed FM. The biomarker modeling module160may receive user data and determine a likelihood that the user has FM. If the likelihood exceeds some threshold, the biomarker modeling module160may alert the user that the user should go to a healthcare provider to receive an official diagnosis.

In some embodiments, the biomarker modeling module160determines whether a user's symptoms are caused by the user's FM or by pharmacological solutions the user is currently using. For example, certain pain medications may include some negative side effects like drowsiness or sedation, and a user may have difficulty determining whether their symptoms are caused by their FM or a pain medication they are taking for their FM. The biomarker modeling module160may determine a likelihood that a particular symptom is caused by the user's FM and may inform the user if the symptom is likely caused by a pharmacological solution instead.

In some embodiments, the biomarker modeling module160determines the level of mental health related to behavioral therapy skills, such as stress levels, coping skill levels, mindfulness, pain acceptance, sleep interference, pain interference, psychological flexibility, or level of committed action. The biomarker module160may alert the user that the user should make efforts to take action to positively modify these skills.

The treatment planning module170generates a treatment plan to a user of the digital therapy system140to alleviate a user's FM. A treatment plan is a set of one or more treatment assignments for the user to perform as part of treating or mitigating their FM in accordance with CBT techniques. A treatment assignment is an exercise or activity that assists the user in developing effective strategies for alleviating symptoms of FM. For example, treatment assignments may include exercises and activities such as talk therapy, skill building materials, mindfulness exercises, sleep planning, behavioral therapy tasks, physical movements, recommendations in favor or against certain activities, recommendations in favor or against certain pharmacological solutions to the user's symptoms, reading materials, presentations of a user's progress, or recommendations for diet changes.

The treatment planning module170applies one or more treatment planning models to generate a treatment plan for a user. A treatment planning model is one or more machine learning models (e.g., neural networks) that are trained to generate treatment plans for users of the digital therapy system140based on biomarker characteristics of the users determined by the biomarker modeling module160. For example, a treatment planning model may be trained to generate a treatment plan for a user based on the severity of the user's FM as predicted by biomarker characteristics determined for that user. A treatment planning model may be trained to correlate biomarker characteristics of a user with other data to determine a treatment plan for the user. For example, a treatment planning model may be trained to correlate a user's biomarker characteristics with the efficacy of previous treatment assignments the user has performed and recent physical activity performed by the user to generate a treatment plan that may account for a flareup of a user's FM symptoms. The treatment planning model may also be trained to generate a treatment plan for a user based on previous treatment assignments completed by the user. For example, if the user has already completed basic treatment assignments, the treatment planning model may generate a treatment plan with more complex treatment assignments for the user.

The treatment planning model may be trained based on training data received by the treatment planning module170. Training data for a treatment planning model may include biomarker characteristics of a user, weather data, location data, or data from studies conducted by third parties. In some embodiments, a treatment planning model may be trained based on user data from multiple users of the digital therapy system140. In these embodiments, the treatment planning model may be trained to generate a treatment plan for one user based on the efficacy of treatment plans provided to similar users. For example, if a particular treatment assignment was effective with users with similar medical histories to the user, then the target planning model may generate a treatment plan for the user with the treatment assignment.

In some embodiments, the training data includes labels for training examples that are used to train a treatment planning model. For example, training data may include a set of training examples, where each example includes biomarker characteristics for a user. Each training example may be labeled with whether a particular treatment assignment was effective or with a set of scores indicating the efficacy of a set of associated treatment assignments.

In some embodiments, the training data for a treatment planning model may be preprocessed. For example, the treatment planning module170may featurize the training data, normalize the training data, remove training examples that are missing important pieces of information, or remove anomalous training data.

In some embodiments, to train a treatment planning model, the treatment planning module170generates feature sets of embeddings based on the training data. For example, the treatment planning module170may generate an embedding based on biomarker characteristics associated with a user and an embedding based on weather data, and these embeddings may be used to train a treatment planning model.

In some embodiments, the treatment planning module170may retrain a treatment planning model based on new data received by the digital therapy system140in the course of providing treatment to a user. For example, if a treatment planning model generates a treatment plan, and the user reports that the treatment assignments in the treatment plan are less effective than the treatment planning model predicted, then the treatment planning module170may retrain the treatment planning model based on the reported effectiveness of the treatment assignments in the treatment plan.

The training data may be received from user devices100, provider devices110, or remote databases120. The training data also may include biomarker characteristics generated by the biomarker modeling module160or may include data on treatment assignments provided to the user. Additionally, the training data may include data from other users of the digital therapy system140.

In some embodiments, the treatment planning module170adjusts a user's treatment plan based on additional data received by the treatment planning module170. For example, the treatment planning module170may adjust the user's treatment plan in response to data that indicates a user's positive or negative reaction to treatment assignments, actions taken by the user that may cause a flare up, whether the user completes treatment assignments, level of engagement with the assignments, how often the user completes treatment assignments, how successfully a user performs a treatment assignments, a change in a user's pharmacological treatments, a change in how often a user administers a prescribed pharmacological treatment to themselves, an increased or decreased success rate of treatment assignments when performed by other users, or a change in the user's biomarker model.

The treatment planning module170may adjust the treatment plan for a user by changing which treatment assignments the treatment planning module170recommends to the user or changing how often the user should perform recommended treatment assignments. For example, if the treatment planning module170has consistently recommended reading materials to a user and the treatment planning module170determines that the user has not been reading the reading materials or that the reading materials have not been effective, the treatment planning module170may stop recommending reading materials to the user and may recommend alternative reading materials, audio or video exercises, or more talk therapy sessions instead.

In some embodiments, the treatment planning module170determines whether a user is disappointed with their progress with their treatment plan. The treatment planning module170may then provide the user with information about the user's progress to demonstrate that the user has made progress through their treatment plan. For example, the treatment planning module170may provide information to the user about how their pain severity has changed or how their mental health has changed, as reported by the user. The treatment planning module170may determine that a user is disappointed with their progress based on user reporting, a decrease in user engagement with their treatment plan, an attempt by a user to end treatment by the digital therapy system140entirely, or a temporary decrease in a user's progress in their treatment.

The treatment communication module180transmits a user's treatment plan to the user device100. The treatment communication module180may transmit a user's full treatment plan to the user device100or may transmit individual treatment assignments to the user device100for the user to perform. The treatment communication module180may transmit data or information that is part of a recommended treatment assignment (e.g., the text of reading materials the user is recommended to read) or may transmit instructions to the user device100to collect the information or data from another source. In some embodiments, the treatment communication module180transmits instructions of a user interface to display to a user via the user device100. The user interface may display to the user treatment assignments that the user is recommended to perform. The treatment communication module180also may transmit the treatment assignments to the user device100and the user device100generates a user interface to present the received treatment assignments using a client application operating on the user device100.

The data store190stores data for the digital therapy system140. The data store190includes one or more computing devices that are configured to store data for the digital therapy system140. The data store190may store data in one or more databases operating on one or more computing devices. The data store190may store data received from the user device100, the provider device110, or the remote databases120. The data store190also may store biomarker models generated by the biomarker modeling module160or treatment planning models generated by the treatment planning module190.

User Clustering

In some embodiments, the digital therapy system140uses user clusters to develop treatment plans for users. The digital therapy system140may apply a biomarker model to user data collected about a user to generate biomarker characteristics for the user. The digital therapy system140may compare the biomarker characteristics for the user to biomarker characteristics associated with other users and generate user clusters based on the similarities of biomarker characteristics of users of the digital therapy system140. A user cluster is a set of users of the digital therapy system140that are associated with similar biomarker characteristics and are likely to respond similarly to a treatment plan.

The digital therapy system140may then generate a treatment plan for users in a user cluster based on the biomarker characteristics of the users in the user cluster. The digital therapy system140may provide the same treatment plan for all users in the user cluster. In some embodiments, the digital therapy system140provides different treatment plans to different users in a user cluster, evaluates the performance of treatment assignments in treating different users in the user cluster, and adjusts the treatment plan provided to each user in the user cluster based on the performance of the treatment assignments.

In some embodiments, the digital therapy system140generates a success score for a user. A success score is a measure of a predicted outcome of a user's treatment through a treatment plan. For example, a success score may represent a predicted reduction in mental health issues, an increase in physical activities, or reduced side effects of a medication. The digital therapy system140may compare a user's progress to a success score assigned to the user to determine whether the user's treatment plan needs to be adjusted. For example, if a user's treatment plan has focused on encouraging the user to partake in more physical activities, but the user has not progressed as much as their success score would suggest that the user should, then the digital therapy system140may determine that the user's treatment plan may need to focus on different treatment assignments (e.g., talk therapy).

Example Method for Implementing a Treatment Plan by a Digital Therapy System

FIG.2is a flowchart illustrating an example method for implementing a treatment plan by a digital therapy system, in accordance with some embodiments. Alternative embodiments may include more, fewer, or different steps from those illustrated inFIG.2, or may perform the steps in a different order from that illustrated inFIG.2.

A digital therapy system generates200training data for a biomarker model and trains210the biomarker model based on the training data. The digital therapy system receives220user data for a user with FM. The digital therapy system may receive the user data from a user device associated with the user. The digital therapy system applies230the trained biomarker model to the user data to predict the onset of one or more FM symptoms and to produce a set of biomarker characteristics that describe characteristics of the user's FM symptoms. In some embodiments, the digital therapy system clusters users together based on their biomarker characteristics to generate user clusters.

The digital therapy system generates240a treatment plan with one or more treatment assignments for the user. The digital therapy system may generate the treatment plan for a user by applying a treatment planning model to the biomarker characteristics for the user. In some embodiments, the digital therapy system generates a treatment plan for the user based on a user cluster with which the user is associated. The digital therapy system implements250the treatment plan. The digital therapy system may implement the treatment plan by transmitting the treatment plan to a user device100or an update to the provider via provider device110. The digital therapy system also may implement the treatment plan by transmitting a notification to the user that the user may experience a flareup of FM symptoms, transmitting an instruction to the user to perform one or more physical movements, transmitting an instruction to the user to administer one or more medications, or modifying a prescription of the user.

Example User Application

FIG.3illustrates example user interfaces in a user application, in accordance with some embodiments. For example, the user application may present a user interface300for starting the tasks that the user has been assigned for a day. The user application may then present a user interface for different tasks for the user to perform. For example, the user application may present user interfaces for video tasks310, audio tasks320, or journaling tasks330. Additionally, the user application may provide a user interface340with tasks that the user can perform for when the user has a flareup. The user application may display this user interface340in response to the digital therapy system140predicting that the user will have a flareup within a certain time period. Alternatively, the user application may allow the user to access this user interface340anytime through a shortcut350.

Additional Considerations

The foregoing description of the embodiments has been presented for the purpose of illustration; it is not intended to be exhaustive or to limit the patent rights to the precise pages disclosed. Persons skilled in the relevant art can appreciate that many modifications and variations are possible in light of the above disclosure.

Any of the steps, operations, or processes described herein may be performed or implemented with one or more hardware or software modules, alone or in combination with other devices. In some embodiments, a software module is implemented with a computer program product comprising one or more computer-readable media containing computer program code or instructions, which can be executed by a computer processor for performing any or all of the steps, operations, or processes described. In some embodiments, a computer-readable medium comprises one or more computer-readable media that, individually or together, comprise instructions that, when executed by one or more processors, cause the one or more processors to perform, individually or together, the steps of the instructions stored on the one or more computer-readable media.