Video Demo:
Try the webpage at: http://menopause-hackster.s3-website-us-east-1.amazonaws.com/
Our Github is: https://github.com/EddOliver/ProjectNIX
DISCLAIMER: This application is used for demonstrative and illustrative purposes only and does not constitute an offering that has gone through regulatory review. It is not intended to serve as a medical application. There is no representation as to the accuracy of the output of this application and it is presented without warranty.
Introduction and inspiration:Menopause is defined retrospectively as the time of the final menstrual period, followed by 12 months of amenorrhea (when menstrual bleeding stops); post-menopause describes the period following the final menses.
The signs and symptoms of menopause include central nervous system-related disorders; metabolic, weight, cardiovascular and musculoskeletal changes; urogenital and skin atrophy; and sexual dysfunction; Those hormonal changes contribute to one specific symptom, called Insomnia.
49.6% of the worldwide population is female, 100% of this women will have eventually menopause symptoms also 4 years before mensis cease, Natural menopause occurs around 51 years worldwide; the average life expectancy at birth is 72 years, Therefore, women are likely to spend almost 20-25 years in menopause.
According to the National Sleep Foundation, approximately 61% of menopausal women have sleep problems.
Insomnia and mood disorders occur in 40–60% of women during the menopausal transition.
According to several articles and reports, including from Mayo Clinic and studies from universities such as Harvard, women with insomnia are more likely than others to report problems such as anxiety, stress, tension, and depressive symptoms, memory issues, and focusing problems. Repeatedly lack of sleep increases the risk of health problems such as high blood pressure, heart problems, diabetes and chronic pain. In worst cases they can also trigger more severe mental problems, as bipolar disorders, schizophrenia, panic disorder or OCD.
There´s available hormone therapy, that involves the administration of synthetic estrogen and progesterone to replace a woman's depleting hormone levels and thus alleviate menopausal symptoms. However, HT has been linked to various contraindications and several risks. Some of the contraindications are: History of breast and endometrial cáncer; liver disease; Hypertriglyceridemia; Thromboembolic disorders; Undiagnosed vaginal bleeding; Endometriosis; Fibroids
Some of the adverse effects are: Nausea; Bloating, weight gain; fluid retention; Mood swings ; Breakthrough bleeding and breast tenderness
Also we have to mention the potential risks of : breast and Endometrial cancer; uterine hyperplasia and its cancer; thromboembolism, biliary pathology and strokes.
Now, let's start with the crux of the problem, as you can understand, not every woman can start hormonal therapy, and also if they can, they will probably suffer the side effects and take the risks of different types of cancer.
By the year 2025, there will be 1 billion women globally experiencing the symptoms of menopause, a number too big to ignore. A huge part of the world’s workforce will be experiencing these symptoms and will lower their productivity, in which all sectors will be involved, it also can last up to ten years to take into consideration the economics of the problem.
And as we know women have the greatest influence on the marketing and purchasing power globally, so solutions of this kind are sure to be a hit.
This sector is projected to be over $50B dollars by 2025. But there are very limited non drug solutions in the market.
If we summarize all that we find that there are two things that are crucial in easing those symptoms and improving the quality of life of women in this stage:
1. To improve sleep
AND
2. To routinely exercise.
Bad sleep creates a negative feedback loop for women that exacerbates with every passing day. Only by improving sleep and tracking exercise we would be attacking not one or two symptoms, but transforming that feedback loop into a positive one that improves the well being of the patient.
SolutionOur solution is a complete IoT and domotics platform that tracks the patient’s sleep via three main devices, they display the data and give notifications and recommendations to the patient and it is compatible with Amazon Alexa.
There is one single item that has proven through several clinical studies to improve sleep considerably and most people don´t know of its benefits:
-The sleep mask: Here, of course with the help of my teammates and the testimony of several women, some that are reaching or have past the age of menopause, we designed a modern IoT enabled sleep mask that tracks your sleep quality, movement, temperature and humidity via two main sensors and uses flashes of light from a couple of light sources.
NOTE: Blue LED Lights are dangerous for the eye, namely the cones and rods and the Retina, so in the sleep mask we only use RED and Yellow tones.
See:https://www.macular.org/ultra-violet-and-blue-light
The idea comes from a study in Stanford that demonstrated that flashing lights of certain colors and wavelengths can help fix our circadian rhythm and improve sleep considerably. (16, 17, 18, 19) All the information and the cycle is sent to our platform to track and use that data in order to perform domotics and follow up with recommendations.
Then for physical exercise and to track heart rate we are using a commercial fitness Band that we hacked through an embedded computer to receive and send information to our platform in order to complete the service. Heart rate is perhaps the most important variable we are tracking as it can give us an entry point to possibly pre-diagnose certain conditions and will enable the system to improve much more.
The last device is a hub with more sensors which in turn track now the patient’s environment in order to perform the last step which is domotics.
There are probably close to 100 million Amazon alexa enabled devices already in the US alone, which is the reason why we developed an alexa app that synchronizes with the platform and through other IoT devices such as these IoT bulbs, thermostat, and blinds we can, in effect control the surrounding of the person and create an environment around them that transforms into the proper one, to sleep.
Now let's talk more about the app. It’s interface is a progresive web app created with react that on its homepage shows you immediately a wellness score derived from all the data we are gathering, notice the Sharing capabilities of it as we know that these kind of apps make sense in this day and age whenever it is gamified and you can share and compete with others.
Now we go to our very animated dashboard which indicates all the variables we are tracking in real time and includes two big sections regarding Physical activity and sleep quality.
All this data is taken from the sensors both on the mask, watch and band to get to simple indicators. Then we have the recommendations tab in which you will be able to control in effect the level of automation, and hours for your sleep. A possible business model would be sell the hardware and a Freemium model on the software and platform.
You can check the app via this link: http://menopause-hackster.s3-website-us-east-1.amazonaws.com/
If you are a judge of this contest, send us a message and we will show you a real time demo via Zoom of the sensors and system working!
Hope you liked our solution as much as we like to create the idea, thank you and take care of those symptoms by trying NYX.
Step by step Instructions:Connection Diagrams:Full System:
RaspberryPi Modules:
RaspberryPi Connection:
Argon for the Sleep mask:
For this, I proceeded to grab the following components:
Which were two Neopixel Matrices, a Grove base for the particle Argon, the particle Argon, its WiFi Antenna and Grove sensors for Temperature/Humidity and 3 Axis Digital Accelerometer.
Apart from that I procured a Sleep mask in which everything may fit inside without sacrificing comfort.:
The next step was to actually 3D print some parts, so the Boards can fit better the sleep mask and also give structure to it. (Designs at the bottom)
Next was to Solder pins to the Neopixel matrices as they were without them. Funnily enough one, when I was testing the system the OUT pin from this Matrices was marked incorrectly. I had a lot of trouble with this until I finnaly switched them and the second Matrix lighted up.
So now we have to test it on the microcontroller:
After that we would be connecting the Other LED matrix
Finally here is a video of the build process and Some testing of the sensors and the matrix and how to fit them all into the
It should look something along these lines:
As usual the test code is at the bottom.
Now let's go for the Argon setup.
Argon Setup:First we have to have an account created in:
Once there we have to access the WebIDE:
There we can load our program in the IDE.
All libraries can be added from the libraries tab.
How does it work:
In this case, the control is done by making a request to our S3 bucket every 3 seconds and checking if an activation has been made.
request.hostname = "menopause-hackster.s3.amazonaws.com";
request.port = 80;
request.path = "/control.json";
http.get(request, response, headers);
if(response.body.substring(5,6) == "0")
{
Particle.publish("status","deactivate", PUBLIC);
}
else
{
Particle.publish("status","activate", PUBLIC);
colorWipe(strip.Color(255, 129, 0), 50); // Red
colorWipe(strip.Color(0, 0, 0), 50); // Black
delay(200);
}
Light Bulb Control:This setting works for bulbs compatible with SmartHome and MagicLight Bulbs (our case).
First we have to have our bulbs configured.
https://www.magiclightbulbs.com/pages/how-to-set-up-magiclight-wifi-bulb
And you'll have to have an IFTTT account:
Since we have everything configured we do the following:
- We create a new function:
We connect these two services:
- Webhooks (It allows us to control the lights through GET request):
- MagicHue:
We can see that we have all these options to modify what we want the lights to do, in this case we use the option of color, intensity and on / off.
Our program does the following.
The execution of this is controlled by means of a lambda in AWS controlled by means of AWS IoT, this is activated every time we send any data from the raspberry to the topic / Bulbs, by means of an IoT Rule as previously seen.
In this case:
- mysleepH: time to sleep
- mysleepM: minute to sleep
- myawakeH: time to get up
- myawakeM: minute to get up
If you reached this point, congratulations, now let's go to the Cloud setup.
AWS Setup:AWS works through roles, these roles are credentials that we create so that the services can communicate with each other, in order to carry out all our integration we need to create a role that allows the effective transmission of all services, therefore that will be the first thing To make.
Note: always start here when doing a project with AWS.
IAM:- Enter the IAM console.
- Enter through the role tab and click "Create role".
- Create a role focused on the IoT platform.
- Press next till review.
- Now we have to add the additional permissions to the Role, in the roles tab enter the role we just created and press the Attach policies button.
Inside policies add the following:
- AmazonDynamoDBFullAccess
- AmazonS3FullAccess
- Inside policies add the following:AmazonDynamoDBFullAccessAmazonS3FullAccess
- Once that is finished, now we can start configuring the Rule within AWS IoT Core.
Since we have all our platform ready, we have to create the accesses to communicate with it.
- First we have to access our AWS console y look for the IoT core service:
- Obtain your AWS endpoint, save it.
- In the lateral panel select the "Onboard" option and then "Get started".
- Select "Get started".
- At "Choose a platform" select "Linux/OSX", in AWS IoT DEvice SDK select "Python" and then click "Next".
- At Name, write any name, then click on "Next step".
- At "Download connection kit for" press the button "Linux/OSX" to download the credential package (which we will use later) and click on "Next Step".
- Click "Done".
- Click "Done".
- On the lateral bar, inside the Manage/Things section we can see our thing already created. Now we have to set up the policy of that thing for it to work without restrictions in AWS.
- At the lateral bar, in the Secure/Policies section we can see our thing-policy, click on it to modify it:
- Click on "Edit policy document".
Copy-paste the following text in the document and save it.
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": "iot:*",
"Resource": "*"
}
]
}
This is how to configure the Rules to connect the rest of AWS services.
- Once we receive the data to our AWS IoT Core, we will configure the Rules to connect the following services.
- Set any name for the Rule.
- In the SQL Query we will place our topic.
- The first rule we are going to create will be to save all the data in a DynamoDB.
- Press "Create a new resource" to create the table where we will save the data.
- For our table we will use the following parameters, I suggest that you use these specifically, since at production level all the device numbers will be different and in the "Time" column we are going to implement a special TIMESTAMP function.
- Once the resource is created we return to:
The Sort Key value special function is:
${parse_time("yyyy.MM.dd G 'at' HH:mm:ss z", timestamp() )}
- Once this is finished, we will have finished the first rule. In this case, because the rule for the lambda uses a different SQL query, we will no longer add any more actions to this rule.
We will have to create an S3 bucket that will serve as storage of the sensor data and as web page hosting.
The names of all the buckets in AWS are unique and unique, so try simple names first and then increase the complexity if they are not available.
In our case it is called: menopause-hackster
Now we have to configure the public access of the bucket to be able to access the data from the web page and the CORS access to be able to call the data by API.
We configure the public access of the bucket in this way:
Policy:
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "AllowPublicReadAccess",
"Effect": "Allow",
"Principal": "*",
"Action": "s3:GetObject",
"Resource": "arn:aws:s3:::YOURBUCKETNAME/*"
}
]
}
We enable CORS access as follows:
The action that we are going to create so that the data read by the sensors reaches S3 will be the following.
Grove AI hat prerequisites:
NOTE: We used the Grove AI Hat because we did not have the Raspberry Grove shield and we had this one at hand, however I saved programming time for the RaspberryPi since we had experience working with this shield.
Configure the Arduino Board Manager URL.
Click File → Preference, copy the following URL into the Additional Boards Manager URLs
https://raw.githubusercontent.com/Seeed-Studio/Seeed_Platform/master/package_seeeduino_boards_index.json
Add the Grove AI HAT board into Arduino IDE. Click Tools → Board:"xxxx" →Boards Manager, tap K210 into the search bar. Find the Grove AI HAT for Edge Computing by Seeed Studio, click Install button.
When the installation is complete, you can find the Seeed K210 Pi board in the Arduino board list.
Also, to use the Grove AI HAT in the Arduino IDE, you need to select the K-flash Programmer at the Arduino Programmer list.
Install the libraries:
Open the demo at Sketch → Include Library → Add.ZIP Library...
Add the two libraries in the Arduino / Libraries folder. Both are specifically designed to operate the sensors with this board.
- ADS1115-master.zip
- DHT_sensor_library.zip
Open the Arduino / Msensors / Msensors.ino file and if the whole installation worked correctly, you should see a correct compilation window.
Communicating the shield with the raspberry pi was a little laborious due to the following factors:
The serial ports of the raspberry and the Hat are connected Tx -> Tx and Rx -> Rx.
The I2C port of both is correctly connected but since the Analog sensor requires I2C in the Hat as Master, we could not communicate with the raspberry that can only function as master.
SPI communication is used by the micro controller for programming, so it was not an option either.
However, the Raspberry and the Microcontroller buy almost all the pins as you can see in the image.
So it occurred to us to create a protocol where the data was passed in parallel from the Hat to the Raspberry, we decided to call it paralax, since the hat is a shield, it only needs to be programmed, in the codes of the Hat and the Raspberry already We carry out the corresponding programming, however they are connected by software.
Every time pin 16 of the raspberry sends a 1, the microcontroller sends all the information to the raspberry in parallel and stores it in 3 variables.
RaspberryPi Setup:RaspberryPi prerequisites:Download the operating system of the Raspberry Pi.
- To download the operating system of the Raspberry enter the following link:
- Link: https://www.raspberrypi.org/downloads/raspbian/
- Download the lastest version.
Flash the operating system in the SD.
Software: https://www.balena.io/etcher/
- Through Etcher flash the raspberry operating system but DO NOT put it inside the raspberry yet.
Create a wpa_supplicant for the connection of the raspberry to the internet.
- Since you have flashed the operating system, copy and paste the files from the "RaspberryPiFiles" folder directly into the SD card.
- Then open the "wpa_supplicant.conf" file with a text editor
In between the quotes in the ssid line write your wifi network and in psk the network key.
country = us
update_config = 1
ctrl_interface =/var/run/wpa_supplicant
network =
{
scan_ssid = 1
ssid = "yourwifi"
psk = "yourpassword"
}
- We save the changes and remove the SD from the PC.
We then place the SD in the raspberry and connect it to its power source.
- The power source of a Raspberry Pi is recommended to be from 5 volts to 2.5A minimum. We recommend the official ower supply for the Raspberry pi.
Once the Raspberry has already started, we need to access it through SSH or with a keyboard and a monitor.
- If you want to access it through SSH we need your IP.
- In order to analyze your network and obtain the number we will have to use one of the following programs.
- Advanced IP Scanner (Windows) or Angry IP Scanner program (Windows, Mac and Linux).
- In the following image you can see how we got the Raspberry IP.
Connect the raspberry with ssh.
To connect using ssh to the raspberry we need the Putty program.
Link: https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html
This program will let us access the command console of the raspberry.
In Linux, just open the terminal and put the following command.
ssh pi@RASPBERRYIP
- Password: “raspberry”
First, we will install the necessary libraries for our program to work.
For it to work we just have to input the following command.
sudo apt-get update
sudo apt-get install python3-pip libglib2.0-dev libatlas-base-dev git -y
sudo pip3 install bluepy Crypto crc16 paho-mqtt sklearn numpy
Download the folder with our program
git clone https://github.com/EddOliver/ProjectNIX
Rename the certificates you downloaded from the AWS folder to "nix.private.key" and "nix.cert.pem" and place them in the "RaspberryScipt / Certs" folder.
Enter the Covital/RpiScript folder.
cd Covital/RpiScript
We will have to configure the IBM IoT Platform credentials in our main.py program, so we open the editor of the Rpi Zero with the following command.
sudo nano main.py
Change the following value for yours at the beginning of the code:
EndPoint = "XXXXXXXXXXXXXXXXX.iot.us-east-1.amazonaws.com"
To save the changes in the editor press the command "ctrl + o", Enter and then "ctrl + x", enter
With this preparation, the last thing we need to do is obtain the MAC-Address of our MiBand3, we will obtain this by executing the following command on the RaspberryPi.
sudo hcitool lescan
To activate the code, execute the following command:
sudo python3 main.py YOURMAC
- To activate the code, execute the following command:
sudo python3 main.py YOURMAC
If everything works correctly you will see the following:
- If everything works correctly you will see the following:
The program that runs on the raspberry performs the following functions:
- Reading the sensors from the Shield.
- Reading the HR from the MiBand3.
- Direct communication to AWS from AWSIoT Rules.
- Analysis of the quality of sleep as a function of sleeping hours and HR data.
The quality of sleep is divided into 3 known patterns that indicate whether you have slept well or poorly, the references to these patterns and more references
We perform a mathematical algorithm that through giving the values recorded in the night of the HR, we can approximate which curve is more similar and know if the person has slept well or not, more details Here and References.
Ideal curve (good):
The person eats a lot before sleeping (bad):
Extreme physical or mental fatigue or stress (bad).
Here is a sample of the HR of our teammate Victor showing that one of the sleep patterns suffers from stress.
You can test this value yourself by opening the jupyter notebook in the "Google Colab" folder on our Github: https://github.com/EddOliver/ProjectNIX/blob/master/Google%20Colab/Check_HR.ipynb
- Automatic reconnection upon sensor reading error or disconnection of the clock.
- Sleep and awake state detection via HR.
URL: http://menopause-hackster.s3-website-us-east-1.amazonaws.com/
All the files of the web page are in the webpage folder and you can open it locally with the following process:
Install the following program:
- Link: https://nodejs.org/es/
Enter the webapp folder.
Once there, open the terminal or in the case of windows cmd.
NOTE: If you are using windows just type cmd on the search bar.
In the cmd or terminal write the next commmand.
npm install
After all the dependencies ave been installed, at the console write:
npm start
URL: http://menopause-hackster.s3-website-us-east-1.amazonaws.com/
Main Page:
This page is intended to be a summary of your performance when sleeping and to stay active, reflected in a score that takes into account the quality of sleep, physical activity and hours of sleep. We also give the option of being able to share your performance on social networks to demonstrate your goals!
Dashboard:
We have a dashboard with all the measurements we make from the sensors, in addition to giving valuable data to the user about their physical activity, sleep, etc.
Recommendations:
This is one of the most important pages since it indicates the recommendations that we must take into consideration to improve our lifestyle and therefore improve the quality of sleep, the user here can also control what recommendations are useful in his lifestyle or not.
Demo:
Again, you can find the test webpage at: http://menopause-hackster.s3-website-us-east-1.amazonaws.com/
Github:
This tab sends us to the project repository, since being open source, they can complement and improve it.
https://github.com/EddOliver/ProjectNIX/
Thinking about the different devices that could open our web app, we made it a responsive web page, therefore it can be opened on any device.
App in Samsung S10:
App in iPhoneSE:
Just in case you missed it:
Studies supporting our thesisThe world bank mentions there are 3764 Billion women, 7.746% are between 40 to 50 years old, that represents 292 billion women suffering the process of menopause.
(1)According to ACOG “Menopause is the time in your life when you naturally stop having menstrual periods. Menopause happens when the ovaries stop making estrogen. Estrogen is a hormone that helps control the menstrual cycle. Menopause marks the end of the reproductive years. The average age that women go through menopause is 51 years.”
Nevertheless, the process of menopause begins in the 30's, that previous stage is called Perimenopause. Perimenopause starts when the estrogens levels begin to decay.
(2) Nature: Hormonal changes that begin during the menopausal transition affect many biological systems. Accordingly, the signs and symptoms of menopause include central nervous system-related disorders; metabolic, weight, cardiovascular and musculoskeletal changes; urogenital and skin atrophy; and sexual dysfunction.
(3) NIH said that one of the first symptoms, even in the perimenopause stage, is insomnia and sleep disorders. Also mentions that sleep disorders could persist even after menopause is over. Melatonin 1 (MT1) and Melatonin 2 (MT2) are the hormones in charge of drowsiness. Those hormones also affect the total sleeping time (TST) and the Sleeping Efficiency (SE).
The next graph shows the percentage of people that has sleep disorder, separated them in men and women.
The next graph shows how many women have sleep disorders during the age and during perimenopause and menopause.
(4) A Harvard study shows that many of the symptoms of menopause could get worse if the patient does not get good sleep. Hormone levels change and that could cause insomnia, and insomnia symptoms could worsen the menopause symptoms. Insomnia could produce short memory problems and focusing problems.
(5) Mayo Clinic in the USA said that insomnia could also produce another physical and mental illness. The lack of sleep increases the risk of having health problems such as, high blood pressure, heart diseases, diabetes and chronic pain. Putting in danger the people who suffer from this illness.
NOTE: Blue LED Lights are dangerous for the eye, namely the cones and rods and the Retina, so in the sleep mask we only use RED and Yellow tones.
See:https://www.macular.org/ultra-violet-and-blue-light
(6) Elservier published an article about 6 different research of sleeping treatments with light, and how those treatments improve the health of the people. Also mentions that in some cases it's better because it reduces the amount of drugs 0people have to take in order to get some sleep.
(7) Pulse published an article where they showed that the red light makes it better to sleep. Also the red light it’s good to increase TST and SE.
(8) Harvard says that eating food with a high GI index could produce insomnia.
Go for low-GI foods as much as possible. This means aiming to eat fruits and vegetables, beans and legumes, nuts and seeds, whole grains, and lean protein instead of anything made of processed grains or with added sugars. Think plain yogurt with berries and nuts instead of cereal or bagels for breakfast; a big plate of roasted vegetables and grilled salmon instead of pasta and meatballs for dinner.
Never eat large meals close to bedtime. As a general rule, a large meal should be eaten at least three to four hours before lying down, maybe more. You do not want to go to bed with lots of food in your intestines!
If you have to have a little something closer to bedtime, avoid sugars and processed grains. A sliced apple with a little almond butter; some blueberries and nut milk; or maybe hummus and carrots. Those are all well-balanced, plant-based snacks.
Commentary and Future Rollout:I would consider the prototype finished as we only need a little of additional touches in the industrial engineering side of things for it to be a commercial product. Well and also a bit on the Electrical engineering perhaps to use only the components we need. That being said this functions as an upgrade from a project that a couple friends and myself are developing and It was ideal for me to use as a springboard and develop the idea much more. We tested the device and platform on several people and most seem to like it, almost everyone seem to adore the idea and the scientific basis, but yes we need to develop a bit more on the "comfort" side of things.
This one has the potential of becoming a commercially available option regarding the "quantify yourself" trend and an enourmous option for people who want to try something else apart from chemical and pharmaceutical solutions. Sleep is important and in this new world transitioning from the pandemic it seems to have little value, but the health virtues of an improved sleep are too Big to not notice.
References:(1)https://datos.bancomundial.org/indicator/SP.POP.2529.FE.5Y?view=chart Banco mundial
(2)https://www.nature.com/articles/nrendo.2017.180?proof=trueIn Nature
(3)https://www.ncbi.nlm.nih.gov/pmc/articles/PMC4621258/ NIH y la NAtional Library of Medicine
(4)https://www.health.harvard.edu/womens-health/perimenopause-rocky-road-to-menopause
(5) https://www.mayoclinic.org/es-es/diseases-conditions/insomnia/in-depth/insomnia-treatment/art-20046677 MAyo Clinic
(6) https://www.elsevier.es/es-revista-atencion-primaria-27-articulo-terapia-luminica-efectividad-el-tratamiento-13116159 Elsavier
(8)https://www.health.harvard.edu/blog/menopause-and-insomnia-could-a-low-gi-diet-help-2020011718710 Harvard
(9) https://ouraring.com/heart-rate-during-sleep
(10) http://healthysleep.med.harvard.edu/healthy/science/what/characteristics
(11) http://healthysleep.med.harvard.edu/healthy/science/what/sleep-patterns-rem-nrem
(12) https://www.uclahealth.org/sleepcenter/heart-disease
(13) https://ouraring.com/sleep-stages#rem-sleep
(14) Dalal, Pronob & Agarwal, Manu. (2015). Postmenopausal syndrome. Indian journal of psychiatry. 57. S222-32. 10.4103/0019-5545.161483.
(15). https://emedicine.medscape.com/article/276104-overview
(17) https://jamanetwork.com/journals/jamanetworkopen/fullarticle/2751894
(19) https://jamanetwork.com/journals/jamanetworkopen/fullarticle/2751894
(20)https://www.thesleepjudge.com/benefits-of-using-a-sleep-mask-at-night/
Comments