import os
from kivy.uix.boxlayout import BoxLayout
from kivy.uix.button import Button
from kivy.uix.label import Label
import requests
import json
import time
from kivy.properties import NumericProperty
import webbrowser
from kivy.core.window import Window
from kivy.clock import Clock



from glob import glob

from kivymd.app import MDApp
from kivy.lang import Builder
from kivy.properties import StringProperty
 
from kivymd.uix.list import OneLineAvatarListItem, IRightBody
from kivy.uix.screenmanager import Screen
from kivymd.uix.label import MDLabel

 
class ContentNavigationDrawer(BoxLayout):
    def dark(self):
        self.theme_cls.theme_style = "Dark"
    def light(self):
        self.theme_cls.theme_style = "Light"
    pass

class ScaleButton(Button):
    min_font_size = NumericProperty(100)

    def on_size(self, *args):
        t_width, t_height = self.texture_size
        width, height = self.size
        if t_height < height and t_width < width:  # Grow
            while t_height < height and t_width < width:
                self.font_size += 1
                self.texture_update()
                t_width, t_height = self.texture_size
        elif t_height > height or t_width > width:  # shrink
            while t_height > height or t_width > width:
                self.font_size = max(self.font_size - 1, self.min_font_size)
                if self.font_size == self.min_font_size:
                    break
                self.texture_update()
                t_width, t_height = self.texture_size


class ScButton(Button):
    min_font_size = NumericProperty(1)

    def on_size(self, *args):
        t_width, t_height = self.texture_size
        width, height = self.size
        if t_height < height and t_width < width:  # Grow
            while t_height < height and t_width < width:
                self.font_size += 1
                self.texture_update()
                t_width, t_height = self.texture_size
        elif t_height > height or t_width > width:  # shrink
            while t_height > height or t_width > width:
                self.font_size = max(self.font_size - 1, self.min_font_size)
                if self.font_size == self.min_font_size:
                    break
                self.texture_update()
                t_width, t_height = self.texture_size


class ScLabel(Label):

    def on_size(self, *args):
        t_width,t_height= self.texture_size
        width,height = self.size
        if t_height < height and t_width < width: # Grow
            while t_height < height and t_width < width:
                self.font_size += 1
                self.texture_update()
                t_width, t_height = self.texture_size
        elif t_height > height or t_width > width: # shrink
            while t_height > height  or t_width > width:
                self.font_size -= 15
                self.texture_update()
                t_width,t_height= self.texture_size

class NavigationItem(OneLineAvatarListItem):
    icon = StringProperty()
 
class CommonHead(Screen):
    pass
class Welcome(Screen):
    def __init__(self, **kwargs):
        self.loaded = False
        self.kv_file_index = 0
        self.kv_filenames = []
        super().__init__(**kwargs)
    def dark(self):
        self.theme_cls.theme_style = "Dark"
    def light(self):
        self.theme_cls.theme_style = "Light"
    pass



class Test1(Screen):

    def __init__(self, **kwargs):
        self.loaded = False
        self.kv_file_index = 0
        self.kv_filenames = []
        super().__init__(**kwargs)

    def worldtotal(self):
        try :
            url = "https://api.covid19api.com/summary"

            response = requests.get(url)
            x = response.text
            parsed = json.loads(x)
            g = parsed['Global']
            print(parsed)
            TOTAL = g['TotalConfirmed']
            RECOVERED = g['TotalRecovered']
            DEATHS = g['TotalDeaths']
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#FFFF00]TOTAL CONFIRMED :  [/color][/b]" + str(TOTAL), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#33FF7C]TOTAL RECOVERED : [/color][/b]" + str(RECOVERED), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#FF0000]TOTAL DEATHS : [/color][/b]" + str(DEATHS), markup=True))


        except requests.exceptions.ConnectionError :
            self.ids.grid.add_widget(ScLabel(text="[b]Kindly Check Your Internet Connection[/b]",markup=True))
        except json.JSONDecodeError :
            self.ids.grid.add_widget(ScLabel(text="[b]Error Decoding Results Check Again Later[/b]",markup=True))

    pass

class Test2(Screen):
    def india(self):

        try:
            url = "https://covid-19-india-data-by-zt.p.rapidapi.com/GetIndiaTotalCounts"

            headers = {
            'x-rapidapi-host': "covid-19-india-data-by-zt.p.rapidapi.com",
            'x-rapidapi-key': "3ae1125923msha231c2e1fc6c41ep14814cjsnfe458e46c62f"
            }

            response = requests.request("GET", url, headers=headers)
            x = response.text
            parsed = json.loads(x)
            g = parsed['data']
            print(parsed)
            CONFIRMED = g[0]['confirmed']
            RECOVERED = g[0]['recovered']
            DEATHS = g[0]['deaths']

            print("CONFIRMED  :" + CONFIRMED)
            print("RECOVERED  :" + RECOVERED)
            print("DEATHS  :" + DEATHS)

            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#FFFF00]TOTAL CONFIRMED :  [/color][/b]" + str(CONFIRMED), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#33FF7C]TOTAL RECOVERED : [/color][/b]" + str(RECOVERED), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#FF0000]TOTAL DEATHS : [/color][/b]" + str(DEATHS), markup=True))


        except requests.exceptions.ConnectionError :
            self.ids.grid.add_widget(ScLabel(text="[b]Kindly Check Your Internet Connection[/b]",markup=True))
        except json.JSONDecodeError :
            self.ids.grid.add_widget(ScLabel(text="[b]Error Decoding Results Check Again Later[/b]",markup=True))
    pass

class Test3(Screen):

    pass
class Assam(Screen):
    def assam(self):
        try :
            url = "https://api.covid19india.org/data.json"

            headers = {}
            payload = {}
            response = requests.request("GET", url, headers=headers, data=payload)

            p = response.text
            parsed = json.loads(p)
            print(parsed)
            ACTIVE = parsed['statewise'][22]['active']
            CONFIRMED = parsed['statewise'][22]['confirmed']
            DEATHS = parsed['statewise'][22]['deaths']
            RECOVERED = parsed['statewise'][22]['recovered']
            self.ids.grid.add_widget(
                ScLabel(text="[b] TOTAL ACTIVE : [/b]" + str(ACTIVE), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#FFFF00]TOTAL CONFIRMED :  [/color][/b]" + str(CONFIRMED), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#33FF7C]TOTAL RECOVERED : [/color][/b]" + str(RECOVERED), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#FF0000]TOTAL DEATHS : [/color][/b]" + str(DEATHS), markup=True))
        except requests.exceptions.ConnectionError :

            x = ScLabel(text="[b]Check Your Network And Try Again!", markup=True)
            self.ids.grid.add_widget(x)
            def call():
                print("x")
            Clock.schedule_once(call(),10)
        except json.JSONDecodeError :
            x = ScLabel(text="[b]Error Decoding Results Check Again Later[/b]",markup=True)
            self.ids.grid.add_widget(x)
            def call():
                print("x")
            Clock.schedule_once(call(),10)
    pass
class Haryana(Screen):
    def haryana(self):
        try :
            url = "https://api.covid19india.org/data.json"

            payload = {}
            headers = {}

            response = requests.request("GET", url, headers=headers, data=payload)

            p = response.text
            parsed = json.loads(p)
            print(parsed)
            ACTIVE = parsed['statewise'][16]['active']
            CONFIRMED = parsed['statewise'][16]['confirmed']
            DEATHS = parsed['statewise'][16]['deaths']
            RECOVERED = parsed['statewise'][16]['recovered']
            self.ids.grid.add_widget(
                ScLabel(text="[b] TOTAL ACTIVE : [/b]" + str(ACTIVE), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#FFFF00]TOTAL CONFIRMED :  [/color][/b]" + str(CONFIRMED), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#33FF7C]TOTAL RECOVERED : [/color][/b]" + str(RECOVERED), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#FF0000]TOTAL DEATHS : [/color][/b]" + str(DEATHS), markup=True))

        except requests.exceptions.ConnectionError :
            self.ids.grid.add_widget(ScLabel(text="[b]Kindly Check Your Internet Connection[/b]",markup=True))
        except json.JSONDecodeError :
            self.ids.grid.add_widget(ScLabel(text="[b]Error Decoding Results Check Again Later[/b]",markup=True))


    pass
class Rajasthan(Screen):
    def rajasthan(self):
        try :
            url = "https://api.covid19india.org/data.json"

            payload = {}
            headers = {}

            response = requests.request("GET", url, headers=headers, data=payload)

            p = response.text
            parsed = json.loads(p)
            print(parsed)
            ACTIVE = parsed['statewise'][5]['active']
            CONFIRMED = parsed['statewise'][5]['confirmed']
            DEATHS = parsed['statewise'][5]['deaths']
            RECOVERED = parsed['statewise'][5]['recovered']
            self.ids.grid.add_widget(
                ScLabel(text="[b] TOTAL ACTIVE : [/b]" + str(ACTIVE), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#FFFF00]TOTAL CONFIRMED :  [/color][/b]" + str(CONFIRMED), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#33FF7C]TOTAL RECOVERED : [/color][/b]" + str(RECOVERED), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#FF0000]TOTAL DEATHS : [/color][/b]" + str(DEATHS), markup=True))

        except requests.exceptions.ConnectionError :
            self.ids.grid.add_widget(ScLabel(text="[b]Kindly Check Your Internet Connection[/b]",markup=True))
        except json.JSONDecodeError :
            self.ids.grid.add_widget(ScLabel(text="[b]Error Decoding Results Check Again Later[/b]",markup=True))

    pass
class Andaman(Screen):
    def andaman(self):
        try:
            url = "https://api.covid19india.org/data.json"

            payload = {}
            headers = {}

            response = requests.request("GET", url, headers=headers, data=payload)

            p = response.text
            parsed = json.loads(p)
            print(parsed)
            ACTIVE = parsed['statewise'][24]['active']
            CONFIRMED = parsed['statewise'][24]['confirmed']
            DEATHS = parsed['statewise'][24]['deaths']
            RECOVERED = parsed['statewise'][24]['recovered']
            self.ids.grid.add_widget(
                ScLabel(text="[b] TOTAL ACTIVE : [/b]" + str(ACTIVE), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#FFFF00]TOTAL CONFIRMED :  [/color][/b]" + str(CONFIRMED), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#33FF7C]TOTAL RECOVERED : [/color][/b]" + str(RECOVERED), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#FF0000]TOTAL DEATHS : [/color][/b]" + str(DEATHS), markup=True))

        except requests.exceptions.ConnectionError :
            self.ids.grid.add_widget(ScLabel(text="[b]Kindly Check Your Internet Connection[/b]",markup=True))
        except json.JSONDecodeError :
            self.ids.grid.add_widget(ScLabel(text="[b]Error Decoding Results Check Again Later[/b]",markup=True))
    pass
class Bihar(Screen):
    def bihar(self):
        try :
            url = "https://api.covid19india.org/data.json"

            payload = {}
            headers = {}

            response = requests.request("GET", url, headers=headers, data=payload)

            p = response.text
            parsed = json.loads(p)
            print(parsed)
            ACTIVE = parsed['statewise'][14]['active']
            CONFIRMED = parsed['statewise'][14]['confirmed']
            DEATHS = parsed['statewise'][14]['deaths']
            RECOVERED = parsed['statewise'][14]['recovered']
            self.ids.grid.add_widget(
                ScLabel(text="[b] TOTAL ACTIVE : [/b]" + str(ACTIVE), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#FFFF00]TOTAL CONFIRMED :  [/color][/b]" + str(CONFIRMED), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#33FF7C]TOTAL RECOVERED : [/color][/b]" + str(RECOVERED), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#FF0000]TOTAL DEATHS : [/color][/b]" + str(DEATHS), markup=True))

        except requests.exceptions.ConnectionError :
            self.ids.grid.add_widget(ScLabel(text="[b]Kindly Check Your Internet Connection[/b]",markup=True))
        except json.JSONDecodeError :
            self.ids.grid.add_widget(ScLabel(text="[b]Error Decoding Results Check Again Later[/b]",markup=True))
    pass
class Goa(Screen):
    def goa(self):
        try:
            url = "https://api.covid19india.org/data.json"

            payload = {}
            headers = {}

            response = requests.request("GET", url, headers=headers, data=payload)

            p = response.text
            parsed = json.loads(p)
            print(parsed)
            ACTIVE = parsed['statewise'][28]['active']
            CONFIRMED = parsed['statewise'][28]['confirmed']
            DEATHS = parsed['statewise'][28]['deaths']
            RECOVERED = parsed['statewise'][28]['recovered']
            self.ids.grid.add_widget(
                ScLabel(text="[b] TOTAL ACTIVE : [/b]" + str(ACTIVE), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#FFFF00]TOTAL CONFIRMED :  [/color][/b]" + str(CONFIRMED), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#33FF7C]TOTAL RECOVERED : [/color][/b]" + str(RECOVERED), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#FF0000]TOTAL DEATHS : [/color][/b]" + str(DEATHS), markup=True))

        except requests.exceptions.ConnectionError :
            self.ids.grid.add_widget(ScLabel(text="[b]Kindly Check Your Internet Connection[/b]",markup=True))
        except json.JSONDecodeError :
            self.ids.grid.add_widget(ScLabel(text="[b]Error Decoding Results Check Again Later[/b]",markup=True))
    pass
class Chhattisgarh(Screen):
    def chattisgarh(self):
        try:
            url = "https://api.covid19india.org/data.json"

            payload = {}
            headers = {}

            response = requests.request("GET", url, headers=headers, data=payload)

            p = response.text
            parsed = json.loads(p)
            print(parsed)
            ACTIVE = parsed['statewise'][23]['active']
            CONFIRMED = parsed['statewise'][23]['confirmed']
            DEATHS = parsed['statewise'][23]['deaths']
            RECOVERED = parsed['statewise'][23]['recovered']
            self.ids.grid.add_widget(
                ScLabel(text="[b] TOTAL ACTIVE : [/b]" + str(ACTIVE), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#FFFF00]TOTAL CONFIRMED :  [/color][/b]" + str(CONFIRMED), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#33FF7C]TOTAL RECOVERED : [/color][/b]" + str(RECOVERED), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#FF0000]TOTAL DEATHS : [/color][/b]" + str(DEATHS), markup=True))
        except requests.exceptions.ConnectionError :
            self.ids.grid.add_widget(ScLabel(text="[b]Kindly Check Your Internet Connection[/b]",markup=True))
        except json.JSONDecodeError :
            self.ids.grid.add_widget(ScLabel(text="[b]Error Decoding Results Check Again Later[/b]",markup=True))
    pass
class Himachal(Screen):
    def himachal(self):
        try:

            url = "https://api.covid19india.org/data.json"

            payload = {}
            headers = {}

            response = requests.request("GET", url, headers=headers, data=payload)

            p = response.text
            parsed = json.loads(p)
            print(parsed)
            ACTIVE = parsed['statewise'][21]['active']
            CONFIRMED = parsed['statewise'][21]['confirmed']
            DEATHS = parsed['statewise'][21]['deaths']
            RECOVERED = parsed['statewise'][21]['recovered']
            self.ids.grid.add_widget(
                ScLabel(text="[b] TOTAL ACTIVE : [/b]" + str(ACTIVE), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#FFFF00]TOTAL CONFIRMED :  [/color][/b]" + str(CONFIRMED), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#33FF7C]TOTAL RECOVERED : [/color][/b]" + str(RECOVERED), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#FF0000]TOTAL DEATHS : [/color][/b]" + str(DEATHS), markup=True))

        except requests.exceptions.ConnectionError :
            self.ids.grid.add_widget(ScLabel(text="[b]Kindly Check Your Internet Connection[/b]",markup=True))
        except json.JSONDecodeError :
            self.ids.grid.add_widget(ScLabel(text="[b]Error Decoding Results Check Again Later[/b]",markup=True))
    pass
class Jharkhand(Screen):
    def jharkhand(self):
        try:

            url = "https://api.covid19india.org/data.json"

            payload = {}
            headers = {}

            response = requests.request("GET", url, headers=headers, data=payload)

            p = response.text
            parsed = json.loads(p)
            print(parsed)
            ACTIVE = parsed['statewise'][18]['active']
            CONFIRMED = parsed['statewise'][18]['confirmed']
            DEATHS = parsed['statewise'][18]['deaths']
            RECOVERED = parsed['statewise'][18]['recovered']
            self.ids.grid.add_widget(
                ScLabel(text="[b] TOTAL ACTIVE : [/b]" + str(ACTIVE), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#FFFF00]TOTAL CONFIRMED :  [/color][/b]" + str(CONFIRMED), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#33FF7C]TOTAL RECOVERED : [/color][/b]" + str(RECOVERED), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#FF0000]TOTAL DEATHS : [/color][/b]" + str(DEATHS), markup=True))

        except requests.exceptions.ConnectionError :
            self.ids.grid.add_widget(ScLabel(text="[b]Kindly Check Your Internet Connection[/b]",markup=True))
        except json.JSONDecodeError :
            self.ids.grid.add_widget(ScLabel(text="[b]Error Decoding Results Check Again Later[/b]",markup=True))
    pass
class Kerala(Screen):
    def kerala(self):
        try:
            url = "https://api.covid19india.org/data.json"

            payload = {}
            headers = {}

            response = requests.request("GET", url, headers=headers, data=payload)

            p = response.text
            parsed = json.loads(p)
            print(parsed)
            ACTIVE = parsed['statewise'][13]['active']
            CONFIRMED = parsed['statewise'][13]['confirmed']
            DEATHS = parsed['statewise'][13]['deaths']
            RECOVERED = parsed['statewise'][13]['recovered']
            self.ids.grid.add_widget(
                ScLabel(text="[b] TOTAL ACTIVE : [/b]" + str(ACTIVE), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#FFFF00]TOTAL CONFIRMED :  [/color][/b]" + str(CONFIRMED), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#33FF7C]TOTAL RECOVERED : [/color][/b]" + str(RECOVERED), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#FF0000]TOTAL DEATHS : [/color][/b]" + str(DEATHS), markup=True))

        except requests.exceptions.ConnectionError :
            self.ids.grid.add_widget(ScLabel(text="[b]Kindly Check Your Internet Connection[/b]",markup=True))
        except json.JSONDecodeError :
            self.ids.grid.add_widget(ScLabel(text="[b]Error Decoding Results Check Again Later[/b]",markup=True))
    pass
class Manipur(Screen):
    def manipur(self):
        try:

            url = "https://api.covid19india.org/data.json"

            payload = {}
            headers = {}

            response = requests.request("GET", url, headers=headers, data=payload)

            p = response.text
            parsed = json.loads(p)
            print(parsed)
            ACTIVE = parsed['statewise'][29]['active']
            CONFIRMED = parsed['statewise'][29]['confirmed']
            DEATHS = parsed['statewise'][29]['deaths']
            RECOVERED = parsed['statewise'][29]['recovered']
            self.ids.grid.add_widget(
                ScLabel(text="[b] TOTAL ACTIVE : [/b]" + str(ACTIVE), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#FFFF00]TOTAL CONFIRMED :  [/color][/b]" + str(CONFIRMED), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#33FF7C]TOTAL RECOVERED : [/color][/b]" + str(RECOVERED), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#FF0000]TOTAL DEATHS : [/color][/b]" + str(DEATHS), markup=True))

        except requests.exceptions.ConnectionError :
            self.ids.grid.add_widget(ScLabel(text="[b]Kindly Check Your Internet Connection[/b]",markup=True))
        except json.JSONDecodeError :
            self.ids.grid.add_widget(ScLabel(text="[b]Error Decoding Results Check Again Later[/b]",markup=True))
    pass
class Mizoram(Screen):
    def mizoram(self):
        try:
            url = "https://api.covid19india.org/data.json"

            payload = {}
            headers = {}

            response = requests.request("GET", url, headers=headers, data=payload)

            p = response.text
            parsed = json.loads(p)
            print(parsed)
            ACTIVE = parsed['statewise'][31]['active']
            CONFIRMED = parsed['statewise'][31]['confirmed']
            DEATHS = parsed['statewise'][31]['deaths']
            RECOVERED = parsed['statewise'][31]['recovered']
            self.ids.grid.add_widget(
                ScLabel(text="[b] TOTAL ACTIVE : [/b]" + str(ACTIVE), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#FFFF00]TOTAL CONFIRMED :  [/color][/b]" + str(CONFIRMED), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#33FF7C]TOTAL RECOVERED : [/color][/b]" + str(RECOVERED), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#FF0000]TOTAL DEATHS : [/color][/b]" + str(DEATHS), markup=True))

        except requests.exceptions.ConnectionError :
            self.ids.grid.add_widget(ScLabel(text="[b]Kindly Check Your Internet Connection[/b]",markup=True))
        except json.JSONDecodeError :
            self.ids.grid.add_widget(ScLabel(text="[b]Error Decoding Results Check Again Later[/b]",markup=True))
    pass
class Puducherry(Screen):
    def puducherry(self):
        try:
            url = "https://api.covid19india.org/data.json"

            payload = {}
            headers = {}

            response = requests.request("GET", url, headers=headers, data=payload)

            p = response.text
            parsed = json.loads(p)
            print(parsed)
            ACTIVE = parsed['statewise'][27]['active']
            CONFIRMED = parsed['statewise'][27]['confirmed']
            DEATHS = parsed['statewise'][27]['deaths']
            RECOVERED = parsed['statewise'][27]['recovered']
            self.ids.grid.add_widget(
                ScLabel(text="[b] TOTAL ACTIVE : [/b]" + str(ACTIVE), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#FFFF00]TOTAL CONFIRMED :  [/color][/b]" + str(CONFIRMED), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#33FF7C]TOTAL RECOVERED : [/color][/b]" + str(RECOVERED), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#FF0000]TOTAL DEATHS : [/color][/b]" + str(DEATHS), markup=True))

        except requests.exceptions.ConnectionError :
            self.ids.grid.add_widget(ScLabel(text="[b]Kindly Check Your Internet Connection[/b]",markup=True))
        except json.JSONDecodeError :
            self.ids.grid.add_widget(ScLabel(text="[b]Error Decoding Results Check Again Later[/b]",markup=True))
    pass
class Tamilnadu(Screen):
    def tamilnadu(self):
        try:
            url = "https://api.covid19india.org/data.json"

            payload = {}
            headers = {}

            response = requests.request("GET", url, headers=headers, data=payload)

            p = response.text
            parsed = json.loads(p)
            print(parsed)
            ACTIVE = parsed['statewise'][6]['active']
            CONFIRMED = parsed['statewise'][6]['confirmed']
            DEATHS = parsed['statewise'][6]['deaths']
            RECOVERED = parsed['statewise'][6]['recovered']
            self.ids.grid.add_widget(
                ScLabel(text="[b] TOTAL ACTIVE : [/b]" + str(ACTIVE), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#FFFF00]TOTAL CONFIRMED :  [/color][/b]" + str(CONFIRMED), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#33FF7C]TOTAL RECOVERED : [/color][/b]" + str(RECOVERED), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#FF0000]TOTAL DEATHS : [/color][/b]" + str(DEATHS), markup=True))

        except requests.exceptions.ConnectionError :
            self.ids.grid.add_widget(ScLabel(text="[b]Kindly Check Your Internet Connection[/b]",markup=True))
        except json.JSONDecodeError :
            self.ids.grid.add_widget(ScLabel(text="[b]Error Decoding Results Check Again Later[/b]",markup=True))
    pass
class Tripura(Screen):
    def __init__(self,**kwargs):
        super(Tripura, self).__init__(**kwargs)
        self.l = ScButton(text= "OK")
        self.add_widget(self.l)


    def tripura(self):
        try:

            url = "https://api.covid19india.org/data.json"

            payload = {}
            headers = {}

            response = requests.request("GET", url, headers=headers, data=payload)

            p = response.text
            parsed = json.loads(p)
            print(parsed)
            ACTIVE = parsed['statewise'][30]['active']
            CONFIRMED = parsed['statewise'][30]['confirmed']
            DEATHS = parsed['statewise'][30]['deaths']
            RECOVERED = parsed['statewise'][30]['recovered']
            x = ScLabel(text="[b] TOTAL ACTIVE : [/b]" + str(ACTIVE),markup=True,)
            y = ScLabel(text="[b][color=#FFFF00]TOTAL CONFIRMED :  [/color][/b]" + str(CONFIRMED), markup=True)
            z = ScLabel(text="[b][color=#33FF7C]TOTAL RECOVERED : [/color][/b]" + str(RECOVERED), markup=True)
            w = ScLabel(text="[b][color=#FF0000]TOTAL DEATHS : [/color][/b]" + str(DEATHS), markup=True)



            self.ids.grid.add_widget(x)
            self.ids.grid.add_widget(y)
            self.ids.grid.add_widget(z)
            self.ids.grid.add_widget(w)


        except requests.exceptions.ConnectionError :
            self.ids.grid.add_widget(ScLabel(text="[b]Kindly Check Your Internet Connection[/b]",markup=True))
        except json.JSONDecodeError :
            self.ids.grid.add_widget(ScLabel(text="[b]Error Decoding Results Check Again Later[/b]",markup=True))
    pass
class Uttarakhand(Screen):
    def uttarakhand(self):
        try:
            url = "https://api.covid19india.org/data.json"

            payload = {}
            headers = {}

            response = requests.request("GET", url, headers=headers, data=payload)

            p = response.text
            parsed = json.loads(p)
            print(parsed)
            ACTIVE = parsed['statewise'][20]['active']
            CONFIRMED = parsed['statewise'][20]['confirmed']
            DEATHS = parsed['statewise'][20]['deaths']
            RECOVERED = parsed['statewise'][20]['recovered']
            self.ids.grid.add_widget(
                ScLabel(text="[b] TOTAL ACTIVE : [/b]" + str(ACTIVE), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#FFFF00]TOTAL CONFIRMED :  [/color][/b]" + str(CONFIRMED), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#33FF7C]TOTAL RECOVERED : [/color][/b]" + str(RECOVERED), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#FF0000]TOTAL DEATHS : [/color][/b]" + str(DEATHS), markup=True))

        except requests.exceptions.ConnectionError :
            self.ids.grid.add_widget(ScLabel(text="[b]Kindly Check Your Internet Connection[/b]",markup=True))
        except json.JSONDecodeError :
            self.ids.grid.add_widget(ScLabel(text="[b]Error Decoding Results Check Again Later[/b]",markup=True))
    pass
class Andhra(Screen):
    def andhra(self):
        try:
            url = "https://api.covid19india.org/data.json"

            payload = {}
            headers = {}

            response = requests.request("GET", url, headers=headers, data=payload)

            p = response.text
            parsed = json.loads(p)
            print(parsed)
            ACTIVE = parsed['statewise'][8]['active']
            CONFIRMED = parsed['statewise'][8]['confirmed']
            DEATHS = parsed['statewise'][8]['deaths']
            RECOVERED = parsed['statewise'][8]['recovered']
            self.ids.grid.add_widget(
                ScLabel(text="[b] TOTAL ACTIVE : [/b]" + str(ACTIVE), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#FFFF00]TOTAL CONFIRMED :  [/color][/b]" + str(CONFIRMED), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#33FF7C]TOTAL RECOVERED : [/color][/b]" + str(RECOVERED), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#FF0000]TOTAL DEATHS : [/color][/b]" + str(DEATHS), markup=True))
        except requests.exceptions.ConnectionError :
            self.ids.grid.add_widget(ScLabel(text="[b]Kindly Check Your Internet Connection[/b]",markup=True))
        except json.JSONDecodeError :
            self.ids.grid.add_widget(ScLabel(text="[b]Error Decoding Results Check Again Later[/b]",markup=True))


    pass
class Maharashtra(Screen):
    def maharashtra(self):
        try:
            url = "https://api.covid19india.org/data.json"

            payload = {}
            headers = {}

            response = requests.request("GET", url, headers=headers, data=payload)

            p = response.text
            parsed = json.loads(p)
            print(parsed)
            ACTIVE = parsed['statewise'][1]['active']
            CONFIRMED = parsed['statewise'][1]['confirmed']
            DEATHS = parsed['statewise'][1]['deaths']
            RECOVERED = parsed['statewise'][1]['recovered']
            self.ids.grid.add_widget(
                ScLabel(text="[b] TOTAL ACTIVE : [/b]" + str(ACTIVE), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#FFFF00]TOTAL CONFIRMED :  [/color][/b]" + str(CONFIRMED), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#33FF7C]TOTAL RECOVERED : [/color][/b]" + str(RECOVERED), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#FF0000]TOTAL DEATHS : [/color][/b]" + str(DEATHS), markup=True))

        except requests.exceptions.ConnectionError :
            self.ids.grid.add_widget(ScLabel(text="[b]Kindly Check Your Internet Connection[/b]",markup=True))
        except json.JSONDecodeError :
            self.ids.grid.add_widget(ScLabel(text="[b]Error Decoding Results Check Again Later[/b]",markup=True))
    pass
class Madhya(Screen):
    def madhya(self):
        try:
            url = "https://api.covid19india.org/data.json"

            payload = {}
            headers = {}

            response = requests.request("GET", url, headers=headers, data=payload)

            p = response.text
            parsed = json.loads(p)
            print(parsed)
            ACTIVE = parsed['statewise'][4]['active']
            CONFIRMED = parsed['statewise'][4]['confirmed']
            DEATHS = parsed['statewise'][4]['deaths']
            RECOVERED = parsed['statewise'][4]['recovered']
            self.ids.grid.add_widget(
                ScLabel(text="[b] TOTAL ACTIVE : [/b]" + str(ACTIVE), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#FFFF00]TOTAL CONFIRMED :  [/color][/b]" + str(CONFIRMED), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#33FF7C]TOTAL RECOVERED : [/color][/b]" + str(RECOVERED), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#FF0000]TOTAL DEATHS : [/color][/b]" + str(DEATHS), markup=True))

        except requests.exceptions.ConnectionError :
            self.ids.grid.add_widget(ScLabel(text="[b]Kindly Check Your Internet Connection[/b]",markup=True))
        except json.JSONDecodeError :
            self.ids.grid.add_widget(ScLabel(text="[b]Error Decoding Results Check Again Later[/b]",markup=True))

    pass
class Arunachal(Screen):
    def arunachal(self):
        try:
            url = "https://api.covid19india.org/data.json"

            payload = {}
            headers = {}

            response = requests.request("GET", url, headers=headers, data=payload)

            p = response.text
            parsed = json.loads(p)
            print(parsed)
            ACTIVE = parsed['statewise'][32]['active']
            CONFIRMED = parsed['statewise'][32]['confirmed']
            DEATHS = parsed['statewise'][32]['deaths']
            RECOVERED = parsed['statewise'][32]['recovered']
            self.ids.grid.add_widget(
                ScLabel(text="[b] TOTAL ACTIVE : [/b]" + str(ACTIVE), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#FFFF00]TOTAL CONFIRMED :  [/color][/b]" + str(CONFIRMED), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#33FF7C]TOTAL RECOVERED : [/color][/b]" + str(RECOVERED), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#FF0000]TOTAL DEATHS : [/color][/b]" + str(DEATHS), markup=True))

        except requests.exceptions.ConnectionError :
            self.ids.grid.add_widget(ScLabel(text="[b]Kindly Check Your Internet Connection[/b]",markup=True))
        except json.JSONDecodeError :
            self.ids.grid.add_widget(ScLabel(text="[b]Error Decoding Results Check Again Later[/b]",markup=True))
    pass
class Chandigarh(Screen):
    def chandigarh(self):
        try:
            url = "https://api.covid19india.org/data.json"

            payload = {}
            headers = {}

            response = requests.request("GET", url, headers=headers, data=payload)

            p = response.text
            parsed = json.loads(p)
            print(parsed)
            ACTIVE = parsed['statewise'][19]['active']
            CONFIRMED = parsed['statewise'][19]['confirmed']
            DEATHS = parsed['statewise'][19]['deaths']
            RECOVERED = parsed['statewise'][19]['recovered']
            self.ids.grid.add_widget(
                ScLabel(text="[b] TOTAL ACTIVE : [/b]" + str(ACTIVE), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#FFFF00]TOTAL CONFIRMED :  [/color][/b]" + str(CONFIRMED), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#33FF7C]TOTAL RECOVERED : [/color][/b]" + str(RECOVERED), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#FF0000]TOTAL DEATHS : [/color][/b]" + str(DEATHS), markup=True))

        except requests.exceptions.ConnectionError :
            self.ids.grid.add_widget(ScLabel(text="[b]Kindly Check Your Internet Connection[/b]",markup=True))
        except json.JSONDecodeError :
            self.ids.grid.add_widget(ScLabel(text="[b]Error Decoding Results Check Again Later[/b]",markup=True))
    pass
class Delhi(Screen):
    def delhi(self):
        try:
            url = "https://api.covid19india.org/data.json"

            payload = {}
            headers = {}

            response = requests.request("GET", url, headers=headers, data=payload)

            p = response.text
            parsed = json.loads(p)
            print(parsed)
            ACTIVE = parsed['statewise'][3]['active']
            CONFIRMED = parsed['statewise'][3]['confirmed']
            DEATHS = parsed['statewise'][3]['deaths']
            RECOVERED = parsed['statewise'][3]['recovered']
            self.ids.grid.add_widget(
                ScLabel(text="[b] TOTAL ACTIVE : [/b]" + str(ACTIVE), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#FFFF00]TOTAL CONFIRMED :  [/color][/b]" + str(CONFIRMED), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#33FF7C]TOTAL RECOVERED : [/color][/b]" + str(RECOVERED), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#FF0000]TOTAL DEATHS : [/color][/b]" + str(DEATHS), markup=True))

        except requests.exceptions.ConnectionError :
            self.ids.grid.add_widget(ScLabel(text="[b]Kindly Check Your Internet Connection[/b]",markup=True))
        except json.JSONDecodeError :
            self.ids.grid.add_widget(ScLabel(text="[b]Error Decoding Results Check Again Later[/b]",markup=True))
    pass
class Gujrat(Screen):
    def gujrat(self):
        try:
            url = "https://api.covid19india.org/data.json"

            payload = {}
            headers = {}

            response = requests.request("GET", url, headers=headers, data=payload)

            p = response.text
            parsed = json.loads(p)
            print(parsed)
            ACTIVE = parsed['statewise'][2]['active']
            CONFIRMED = parsed['statewise'][2]['confirmed']
            DEATHS = parsed['statewise'][2]['deaths']
            RECOVERED = parsed['statewise'][2]['recovered']
            self.ids.grid.add_widget(
                ScLabel(text="[b] TOTAL ACTIVE : [/b]" + str(ACTIVE), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#FFFF00]TOTAL CONFIRMED :  [/color][/b]" + str(CONFIRMED), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#33FF7C]TOTAL RECOVERED : [/color][/b]" + str(RECOVERED), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#FF0000]TOTAL DEATHS : [/color][/b]" + str(DEATHS), markup=True))

        except requests.exceptions.ConnectionError :
            self.ids.grid.add_widget(ScLabel(text="[b]Kindly Check Your Internet Connection[/b]",markup=True))
        except json.JSONDecodeError :
            self.ids.grid.add_widget(ScLabel(text="[b]Error Decoding Results Check Again Later[/b]",markup=True))
    pass

class Jammu(Screen):
    def jammu(self):
        try:
            url = "https://api.covid19india.org/data.json"

            payload = {}
            headers = {}

            response = requests.request("GET", url, headers=headers, data=payload)

            p = response.text
            parsed = json.loads(p)
            print(parsed)
            ACTIVE = parsed['statewise'][11]['active']
            CONFIRMED = parsed['statewise'][11]['confirmed']
            DEATHS = parsed['statewise'][11]['deaths']
            RECOVERED = parsed['statewise'][11]['recovered']
            self.ids.grid.add_widget(
                ScLabel(text="[b] TOTAL ACTIVE : [/b]" + str(ACTIVE), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#FFFF00]TOTAL CONFIRMED :  [/color][/b]" + str(CONFIRMED), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#33FF7C]TOTAL RECOVERED : [/color][/b]" + str(RECOVERED), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#FF0000]TOTAL DEATHS : [/color][/b]" + str(DEATHS), markup=True))

        except requests.exceptions.ConnectionError :
            self.ids.grid.add_widget(ScLabel(text="[b]Kindly Check Your Internet Connection[/b]",markup=True))
        except json.JSONDecodeError :
            self.ids.grid.add_widget(ScLabel(text="[b]Error Decoding Results Check Again Later[/b]",markup=True))

    pass
class Karnataka(Screen):
    def karnataka(self):
        try:
            url = "https://api.covid19india.org/data.json"

            payload = {}
            headers = {}

            response = requests.request("GET", url, headers=headers, data=payload)

            p = response.text
            parsed = json.loads(p)
            print(parsed)
            ACTIVE = parsed['statewise'][12]['active']
            CONFIRMED = parsed['statewise'][12]['confirmed']
            DEATHS = parsed['statewise'][12]['deaths']
            RECOVERED = parsed['statewise'][12]['recovered']
            self.ids.grid.add_widget(
                ScLabel(text="[b] TOTAL ACTIVE : [/b]" + str(ACTIVE), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#FFFF00]TOTAL CONFIRMED :  [/color][/b]" + str(CONFIRMED), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#33FF7C]TOTAL RECOVERED : [/color][/b]" + str(RECOVERED), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#FF0000]TOTAL DEATHS : [/color][/b]" + str(DEATHS), markup=True))

        except requests.exceptions.ConnectionError :
            self.ids.grid.add_widget(ScLabel(text="[b]Kindly Check Your Internet Connection[/b]",markup=True))
        except json.JSONDecodeError :
            self.ids.grid.add_widget(ScLabel(text="[b]Error Decoding Results Check Again Later[/b]",markup=True))

    pass
class Ladakh(Screen):
    def ladakh(self):
        try:
            url = "https://api.covid19india.org/data.json"

            payload = {}
            headers = {}

            response = requests.request("GET", url, headers=headers, data=payload)

            p = response.text
            parsed = json.loads(p)
            print(parsed)
            ACTIVE = parsed['statewise'][25]['active']
            CONFIRMED = parsed['statewise'][25]['confirmed']
            DEATHS = parsed['statewise'][25]['deaths']
            RECOVERED = parsed['statewise'][25]['recovered']
            self.ids.grid.add_widget(
                ScLabel(text="[b] TOTAL ACTIVE : [/b]" + str(ACTIVE), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#FFFF00]TOTAL CONFIRMED :  [/color][/b]" + str(CONFIRMED), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#33FF7C]TOTAL RECOVERED : [/color][/b]" + str(RECOVERED), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#FF0000]TOTAL DEATHS : [/color][/b]" + str(DEATHS), markup=True))

        except requests.exceptions.ConnectionError :
            self.ids.grid.add_widget(ScLabel(text="[b]Kindly Check Your Internet Connection[/b]",markup=True))
        except json.JSONDecodeError :
            self.ids.grid.add_widget(ScLabel(text="[b]Error Decoding Results Check Again Later[/b]",markup=True))
    pass
class Meghalaya(Screen):
    def meghalaya(self):
        try:

            url = "https://api.covid19india.org/data.json"

            payload = {}
            headers = {}

            response = requests.request("GET", url, headers=headers, data=payload)

            p = response.text
            parsed = json.loads(p)
            print(parsed)
            ACTIVE = parsed['statewise'][26]['active']
            CONFIRMED = parsed['statewise'][26]['confirmed']
            DEATHS = parsed['statewise'][26]['deaths']
            RECOVERED = parsed['statewise'][26]['recovered']
            self.ids.grid.add_widget(
                ScLabel(text="[b] TOTAL ACTIVE : [/b]" + str(ACTIVE), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#FFFF00]TOTAL CONFIRMED :  [/color][/b]" + str(CONFIRMED), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#33FF7C]TOTAL RECOVERED : [/color][/b]" + str(RECOVERED), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#FF0000]TOTAL DEATHS : [/color][/b]" + str(DEATHS), markup=True))

        except requests.exceptions.ConnectionError :
            self.ids.grid.add_widget(ScLabel(text="[b]Kindly Check Your Internet Connection[/b]",markup=True))
        except json.JSONDecodeError :
            self.ids.grid.add_widget(ScLabel(text="[b]Error Decoding Results Check Again Later[/b]",markup=True))

    pass
class Odisha(Screen):
    def odisha(self):
        try:
            url = "https://api.covid19india.org/data.json"

            payload = {}
            headers = {}

            response = requests.request("GET", url, headers=headers, data=payload)

            p = response.text
            parsed = json.loads(p)
            print(parsed)
            ACTIVE = parsed['statewise'][17]['active']
            CONFIRMED = parsed['statewise'][17]['confirmed']
            DEATHS = parsed['statewise'][17]['deaths']
            RECOVERED = parsed['statewise'][17]['recovered']
            self.ids.grid.add_widget(
                ScLabel(text="[b] TOTAL ACTIVE : [/b]" + str(ACTIVE), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#FFFF00]TOTAL CONFIRMED :  [/color][/b]" + str(CONFIRMED), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#33FF7C]TOTAL RECOVERED : [/color][/b]" + str(RECOVERED), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#FF0000]TOTAL DEATHS : [/color][/b]" + str(DEATHS), markup=True))

        except requests.exceptions.ConnectionError :
            self.ids.grid.add_widget(ScLabel(text="[b]Kindly Check Your Internet Connection[/b]",markup=True))
        except json.JSONDecodeError :
            self.ids.grid.add_widget(ScLabel(text="[b]Error Decoding Results Check Again Later[/b]",markup=True))

    pass
class Punjab(Screen):
    def punjab(self):
        try:
            url = "https://api.covid19india.org/data.json"

            payload = {}
            headers = {}

            response = requests.request("GET", url, headers=headers, data=payload)

            p = response.text
            parsed = json.loads(p)
            print(parsed)
            ACTIVE = parsed['statewise'][15]['active']
            CONFIRMED = parsed['statewise'][15]['confirmed']
            DEATHS = parsed['statewise'][15]['deaths']
            RECOVERED = parsed['statewise'][15]['recovered']
            self.ids.grid.add_widget(
                ScLabel(text="[b] TOTAL ACTIVE : [/b]" + str(ACTIVE), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#FFFF00]TOTAL CONFIRMED :  [/color][/b]" + str(CONFIRMED), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#33FF7C]TOTAL RECOVERED : [/color][/b]" + str(RECOVERED), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#FF0000]TOTAL DEATHS : [/color][/b]" + str(DEATHS), markup=True))

        except requests.exceptions.ConnectionError :
            self.ids.grid.add_widget(ScLabel(text="[b]Kindly Check Your Internet Connection[/b]",markup=True))
        except json.JSONDecodeError :
            self.ids.grid.add_widget(ScLabel(text="[b]Error Decoding Results Check Again Later[/b]",markup=True))

    pass
class UttarPradesh(Screen):
    def uttarpradesh(self):
        try:
            url = "https://api.covid19india.org/data.json"

            payload = {}
            headers = {}

            response = requests.request("GET", url, headers=headers, data=payload)

            p = response.text
            parsed = json.loads(p)
            print(parsed)
            ACTIVE = parsed['statewise'][7]['active']
            CONFIRMED = parsed['statewise'][7]['confirmed']
            DEATHS = parsed['statewise'][7]['deaths']
            RECOVERED = parsed['statewise'][7]['recovered']
            self.ids.grid.add_widget(
                ScLabel(text="[b] TOTAL ACTIVE : [/b]" + str(ACTIVE), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#FFFF00]TOTAL CONFIRMED :  [/color][/b]" + str(CONFIRMED), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#33FF7C]TOTAL RECOVERED : [/color][/b]" + str(RECOVERED), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#FF0000]TOTAL DEATHS : [/color][/b]" + str(DEATHS), markup=True))

        except requests.exceptions.ConnectionError :
            self.ids.grid.add_widget(ScLabel(text="[b]Kindly Check Your Internet Connection[/b]",markup=True))
        except json.JSONDecodeError :
            self.ids.grid.add_widget(ScLabel(text="[b]Error Decoding Results Check Again Later[/b]",markup=True))

    pass


class WestBengal(Screen):
    def westbengal(self):
        try:
            url = "https://api.covid19india.org/data.json"

            payload = {}
            headers = {}

            response = requests.request("GET", url, headers=headers, data=payload)

            p = response.text
            parsed = json.loads(p)
            print(parsed)
            ACTIVE = parsed['statewise'][10]['active']
            CONFIRMED = parsed['statewise'][10]['confirmed']
            DEATHS = parsed['statewise'][10]['deaths']
            RECOVERED = parsed['statewise'][10]['recovered']
            self.ids.grid.add_widget(
                ScLabel(text="[b] TOTAL ACTIVE : [/b]" + str(ACTIVE), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#FFFF00]TOTAL CONFIRMED :  [/color][/b]" + str(CONFIRMED), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#33FF7C]TOTAL RECOVERED : [/color][/b]" + str(RECOVERED), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#FF0000]TOTAL DEATHS : [/color][/b]" + str(DEATHS), markup=True))

        except requests.exceptions.ConnectionError :
            self.ids.grid.add_widget(ScLabel(text="[b]Kindly Check Your Internet Connection[/b]",markup=True))
        except json.JSONDecodeError :
            self.ids.grid.add_widget(ScLabel(text="[b]Error Decoding Results Check Again Later[/b]",markup=True))

    pass
class Telangana(Screen):
    def telangana(self):
        try:
            url = "https://api.covid19india.org/data.json"

            payload = {}
            headers = {}

            response = requests.request("GET", url, headers=headers, data=payload)

            p = response.text
            parsed = json.loads(p)
            print(parsed)
            ACTIVE = parsed['statewise'][9]['active']
            CONFIRMED = parsed['statewise'][9]['confirmed']
            DEATHS = parsed['statewise'][9]['deaths']
            RECOVERED = parsed['statewise'][9]['recovered']
            self.ids.grid.add_widget(
                ScLabel(text="[b] TOTAL ACTIVE : [/b]" + str(ACTIVE), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#FFFF00]TOTAL CONFIRMED :  [/color][/b]" + str(CONFIRMED), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#33FF7C]TOTAL RECOVERED : [/color][/b]" + str(RECOVERED), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#FF0000]TOTAL DEATHS : [/color][/b]" + str(DEATHS), markup=True))

        except requests.exceptions.ConnectionError :
            self.ids.grid.add_widget(ScLabel(text="[b]Kindly Check Your Internet Connection[/b]",markup=True))
        except json.JSONDecodeError :
            self.ids.grid.add_widget(ScLabel(text="[b]Error Decoding Results Check Again Later[/b]",markup=True))

    pass
class Daman(Screen):
    def daman(self):
        try:
            url = "https://api.covid19india.org/data.json"

            payload = {}
            headers = {}

            response = requests.request("GET", url, headers=headers, data=payload)

            p = response.text
            parsed = json.loads(p)
            print(parsed)
            ACTIVE = parsed['statewise'][35]['active']
            CONFIRMED = parsed['statewise'][35]['confirmed']
            DEATHS = parsed['statewise'][35]['deaths']
            RECOVERED = parsed['statewise'][35]['recovered']
            self.ids.grid.add_widget(
                ScLabel(text="[b] TOTAL ACTIVE : [/b]" + str(ACTIVE), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#FFFF00]TOTAL CONFIRMED :  [/color][/b]" + str(CONFIRMED), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#33FF7C]TOTAL RECOVERED : [/color][/b]" + str(RECOVERED), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#FF0000]TOTAL DEATHS : [/color][/b]" + str(DEATHS), markup=True))

        except requests.exceptions.ConnectionError :
            self.ids.grid.add_widget(ScLabel(text="[b]Kindly Check Your Internet Connection[/b]",markup=True))
        except json.JSONDecodeError :
            self.ids.grid.add_widget(ScLabel(text="[b]Error Decoding Results Check Again Later[/b]",markup=True))

    pass
class Dadra(Screen):
    def dadra(self):
        try:
            url = "https://api.covid19india.org/data.json"

            payload = {}
            headers = {}

            response = requests.request("GET", url, headers=headers, data=payload)

            p = response.text
            parsed = json.loads(p)
            print(parsed)
            ACTIVE = parsed['statewise'][34]['active']
            CONFIRMED = parsed['statewise'][34]['confirmed']
            DEATHS = parsed['statewise'][34]['deaths']
            RECOVERED = parsed['statewise'][34]['recovered']
            self.ids.grid.add_widget(
                ScLabel(text="[b] TOTAL ACTIVE : [/b]" + str(ACTIVE), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#FFFF00]TOTAL CONFIRMED :  [/color][/b]" + str(CONFIRMED), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#33FF7C]TOTAL RECOVERED : [/color][/b]" + str(RECOVERED), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#FF0000]TOTAL DEATHS : [/color][/b]" + str(DEATHS), markup=True))

        except requests.exceptions.ConnectionError :
            self.ids.grid.add_widget(ScLabel(text="[b]Kindly Check Your Internet Connection[/b]",markup=True))
        except json.JSONDecodeError :
            self.ids.grid.add_widget(ScLabel(text="[b]Error Decoding Results Check Again Later[/b]",markup=True))

    pass
class Sikkim(Screen):
    def sikkim(self):
        try:
            url = "https://api.covid19india.org/data.json"

            payload = {}
            headers = {}

            response = requests.request("GET", url, headers=headers, data=payload)

            p = response.text
            parsed = json.loads(p)
            print(parsed)
            ACTIVE = parsed['statewise'][37]['active']
            CONFIRMED = parsed['statewise'][37]['confirmed']
            DEATHS = parsed['statewise'][37]['deaths']
            RECOVERED = parsed['statewise'][37]['recovered']
            self.ids.grid.add_widget(
                ScLabel(text="[b] TOTAL ACTIVE : [/b]" + str(ACTIVE), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#FFFF00]TOTAL CONFIRMED :  [/color][/b]" + str(CONFIRMED), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#33FF7C]TOTAL RECOVERED : [/color][/b]" + str(RECOVERED), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#FF0000]TOTAL DEATHS : [/color][/b]" + str(DEATHS), markup=True))

        except requests.exceptions.ConnectionError :
            self.ids.grid.add_widget(ScLabel(text="[b]Kindly Check Your Internet Connection[/b]",markup=True))
        except json.JSONDecodeError :
            self.ids.grid.add_widget(ScLabel(text="[b]Error Decoding Results Check Again Later[/b]",markup=True))
    pass
class Lakhsadweep(Screen):
    def lakshadweep(self):
        try:
            url = "https://api.covid19india.org/data.json"

            payload = {}
            headers = {}

            response = requests.request("GET", url, headers=headers, data=payload)

            p = response.text
            parsed = json.loads(p)
            print(parsed)
            ACTIVE = parsed['statewise'][36]['active']
            CONFIRMED = parsed['statewise'][36]['confirmed']
            DEATHS = parsed['statewise'][36]['deaths']
            RECOVERED = parsed['statewise'][36]['recovered']
            self.ids.grid.add_widget(
                ScLabel(text="[b] TOTAL ACTIVE : [/b]" + str(ACTIVE), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#FFFF00]TOTAL CONFIRMED :  [/color][/b]" + str(CONFIRMED), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#33FF7C]TOTAL RECOVERED : [/color][/b]" + str(RECOVERED), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#FF0000]TOTAL DEATHS : [/color][/b]" + str(DEATHS), markup=True))

        except requests.exceptions.ConnectionError :
            self.ids.grid.add_widget(ScLabel(text="[b]Kindly Check Your Internet Connection[/b]",markup=True))
        except json.JSONDecodeError :
            self.ids.grid.add_widget(ScLabel(text="[b]Error Decoding Results Check Again Later[/b]",markup=True))

    pass


class Nagaland(Screen):
    def nagaland(self):
        try:
            url = "https://api.covid19india.org/data.json"

            payload = {}
            headers = {}

            response = requests.request("GET", url, headers=headers, data=payload)

            p = response.text
            parsed = json.loads(p)
            print(parsed)
            ACTIVE = parsed['statewise'][33]['active']
            CONFIRMED = parsed['statewise'][33]['confirmed']
            DEATHS = parsed['statewise'][33]['deaths']
            RECOVERED = parsed['statewise'][33]['recovered']
            self.ids.grid.add_widget(
                ScLabel(text="[b] TOTAL ACTIVE : [/b]" + str(ACTIVE), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#FFFF00]TOTAL CONFIRMED :  [/color][/b]" + str(CONFIRMED), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#33FF7C]TOTAL RECOVERED : [/color][/b]" + str(RECOVERED), markup=True))
            self.ids.grid.add_widget(
                ScLabel(text="[b][color=#FF0000]TOTAL DEATHS : [/color][/b]" + str(DEATHS), markup=True))

        except requests.exceptions.ConnectionError :
            self.ids.grid.add_widget(ScLabel(text="[b]Kindly Check Your Internet Connection[/b]",markup=True))
        except json.JSONDecodeError :
            self.ids.grid.add_widget(ScLabel(text="[b]Error Decoding Results Check Again Later[/b]",markup=True))

    pass



class TestNavigationDrawer(MDApp):
    def build(self):
        title = 'CORONA STATUS APP'
        self.theme_cls.primary_palette = "Green"
        self.theme_cls.primary_dark_hue = "700"
        self.theme_cls.theme_style = "Dark"



        return Builder.load_file(
            os.path.join(os.path.dirname(__file__), 'main.kv'))
 
TestNavigationDrawer().run()