{ "cells": [ { "cell_type": "markdown", "id": "hrPMSSu2taoh", "metadata": { "id": "hrPMSSu2taoh" }, "source": [ "# **Introduction to Machine Learning with Jupyter Notebooks**\n", "Welcome to the world of Machine Learning. This instructional materials will guide you to learn machine learning using Jupyter Notebook." ] }, { "cell_type": "markdown", "id": "hmsg3MWmvNjq", "metadata": { "id": "hmsg3MWmvNjq", "jp-MarkdownHeadingCollapsed": true }, "source": [ "## **Getting Started**\n", "### **1. Setting Up Your Environment**\n", "Before we go deep into machine learning, you'll need to set up your environment.\n", "follow these steps to set up your environment.\n", "\n", "**Install Jupyter Notebook**:\n", "\n", "Install the classic Jupyter Notebook by writting the below command in your terminal:\n", "\n", "`pip install notebook`\n", "\n", "### **2. Launching Jupyter Notebook**\n", "\n", "To run the notebook:\n", "\n", "`jupyter notebook`\n", "\n", "or if this doesnt work, write this insteade.\n", "\n", "`python -m notebook`" ] }, { "cell_type": "markdown", "id": "1z9COW_-v4_2", "metadata": { "id": "1z9COW_-v4_2", "jp-MarkdownHeadingCollapsed": true }, "source": [ "## **Basics of Machain Learning (ML)**\n", "### **What is Machine Learning?**\n", "It is a subset of Artificial Inteligence (AI). It focuses on making a model capable of learning from data to make predictions or decisions.\n", "\n", "### **Types of Machaine Learning:**\n", "1. *Supervised Learning*: Learning from labeled data (e.g., classification, regression).\n", "2. *Unsupervised Learning*: Finding patterns in unlabeled data (e.g., clustering, dimensionality reduction).\n", "3. *Reinforcement Learning*: Learning through rewards and punishments." ] }, { "cell_type": "markdown", "id": "07hppMV2tpwd", "metadata": { "id": "07hppMV2tpwd" }, "source": [ "## **Building your first ML Model**" ] }, { "cell_type": "markdown", "id": "wUZ2m_AbAsvg", "metadata": { "id": "wUZ2m_AbAsvg" }, "source": [ "**Task**: Develop a weather forecasting model capable of predicting\n", "weather conditions, including sunny, cloudy, rainy, foggy, etc." ] }, { "cell_type": "markdown", "id": "Vm2gWCn5C-0l", "metadata": { "id": "Vm2gWCn5C-0l" }, "source": [ "**Objective**:\n", "Develop instructional materials for students to learn machine learning using\n", "Jupyter Notebook and other ML tools. Use a weather forecasting model as an\n", "example, incorporating TensorFlow and a Decision Tree Classifier. The aim is\n", "to accurately predict weather conditions and display predictions such as\n", "sunny, cloudy, rainy, and foggy.\n" ] }, { "cell_type": "markdown", "id": "IBzg9QTEDEeI", "metadata": { "id": "IBzg9QTEDEeI" }, "source": [ "**Tools and Technologies**:\n", "1. *Jupyter Notebook*: For data preprocessing, model development, and\n", "training.\n", "2. *Programming Language*: Python - Widely used for its simplicity,\n", "extensive libraries, and ecosystem support.\n", "3. *TensorFlow*: For building and training the weather prediction model.\n", "4. *NumPy*: For numerical computations and data manipulation.\n", "5. *Pandas*: For data manipulation and analysis.\n" ] }, { "cell_type": "markdown", "id": "lVtdjpVNDQdj", "metadata": { "id": "lVtdjpVNDQdj" }, "source": [ "## **Task Steps:**" ] }, { "cell_type": "markdown", "id": "GmqCkoG9Juf5", "metadata": { "id": "GmqCkoG9Juf5" }, "source": [ "### **1. Import libraries:**\n", "We will import the necessary libraries first" ] }, { "cell_type": "code", "source": [ "!pip install tensorflow" ], "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "8n6dfiIM4Ekz", "outputId": "c6917575-aae3-490e-e76c-e464566dd22f" }, "id": "8n6dfiIM4Ekz", "execution_count": 1, "outputs": [ { "output_type": "stream", "name": "stdout", "text": [ "Requirement already satisfied: tensorflow in /usr/local/lib/python3.10/dist-packages (2.15.0)\n", "Requirement already satisfied: absl-py>=1.0.0 in /usr/local/lib/python3.10/dist-packages (from tensorflow) (1.4.0)\n", "Requirement already satisfied: astunparse>=1.6.0 in /usr/local/lib/python3.10/dist-packages (from tensorflow) (1.6.3)\n", "Requirement already satisfied: flatbuffers>=23.5.26 in /usr/local/lib/python3.10/dist-packages (from tensorflow) (24.3.25)\n", "Requirement already satisfied: gast!=0.5.0,!=0.5.1,!=0.5.2,>=0.2.1 in /usr/local/lib/python3.10/dist-packages (from tensorflow) (0.6.0)\n", "Requirement already satisfied: google-pasta>=0.1.1 in /usr/local/lib/python3.10/dist-packages (from tensorflow) (0.2.0)\n", "Requirement already satisfied: h5py>=2.9.0 in /usr/local/lib/python3.10/dist-packages (from tensorflow) (3.9.0)\n", "Requirement already satisfied: libclang>=13.0.0 in /usr/local/lib/python3.10/dist-packages (from tensorflow) (18.1.1)\n", "Requirement already satisfied: ml-dtypes~=0.2.0 in /usr/local/lib/python3.10/dist-packages (from tensorflow) (0.2.0)\n", "Requirement already satisfied: numpy<2.0.0,>=1.23.5 in /usr/local/lib/python3.10/dist-packages (from tensorflow) (1.25.2)\n", "Requirement already satisfied: opt-einsum>=2.3.2 in /usr/local/lib/python3.10/dist-packages (from tensorflow) (3.3.0)\n", "Requirement already satisfied: packaging in /usr/local/lib/python3.10/dist-packages (from tensorflow) (24.1)\n", "Requirement already satisfied: protobuf!=4.21.0,!=4.21.1,!=4.21.2,!=4.21.3,!=4.21.4,!=4.21.5,<5.0.0dev,>=3.20.3 in /usr/local/lib/python3.10/dist-packages (from tensorflow) (3.20.3)\n", "Requirement already satisfied: setuptools in /usr/local/lib/python3.10/dist-packages (from tensorflow) (67.7.2)\n", "Requirement already satisfied: six>=1.12.0 in /usr/local/lib/python3.10/dist-packages (from tensorflow) (1.16.0)\n", "Requirement already satisfied: termcolor>=1.1.0 in /usr/local/lib/python3.10/dist-packages (from tensorflow) (2.4.0)\n", "Requirement already satisfied: typing-extensions>=3.6.6 in /usr/local/lib/python3.10/dist-packages (from tensorflow) (4.12.2)\n", "Requirement already satisfied: wrapt<1.15,>=1.11.0 in /usr/local/lib/python3.10/dist-packages (from tensorflow) (1.14.1)\n", "Requirement already satisfied: tensorflow-io-gcs-filesystem>=0.23.1 in /usr/local/lib/python3.10/dist-packages (from tensorflow) (0.37.1)\n", "Requirement already satisfied: grpcio<2.0,>=1.24.3 in /usr/local/lib/python3.10/dist-packages (from tensorflow) (1.64.1)\n", "Requirement already satisfied: tensorboard<2.16,>=2.15 in /usr/local/lib/python3.10/dist-packages (from tensorflow) (2.15.2)\n", "Requirement already satisfied: tensorflow-estimator<2.16,>=2.15.0 in /usr/local/lib/python3.10/dist-packages (from tensorflow) (2.15.0)\n", "Requirement already satisfied: keras<2.16,>=2.15.0 in /usr/local/lib/python3.10/dist-packages (from tensorflow) (2.15.0)\n", "Requirement already satisfied: wheel<1.0,>=0.23.0 in /usr/local/lib/python3.10/dist-packages (from astunparse>=1.6.0->tensorflow) (0.43.0)\n", "Requirement already satisfied: google-auth<3,>=1.6.3 in /usr/local/lib/python3.10/dist-packages (from tensorboard<2.16,>=2.15->tensorflow) (2.27.0)\n", "Requirement already satisfied: google-auth-oauthlib<2,>=0.5 in /usr/local/lib/python3.10/dist-packages (from tensorboard<2.16,>=2.15->tensorflow) (1.2.1)\n", "Requirement already satisfied: markdown>=2.6.8 in /usr/local/lib/python3.10/dist-packages (from tensorboard<2.16,>=2.15->tensorflow) (3.6)\n", "Requirement already satisfied: requests<3,>=2.21.0 in /usr/local/lib/python3.10/dist-packages (from tensorboard<2.16,>=2.15->tensorflow) (2.31.0)\n", "Requirement already satisfied: tensorboard-data-server<0.8.0,>=0.7.0 in /usr/local/lib/python3.10/dist-packages (from tensorboard<2.16,>=2.15->tensorflow) (0.7.2)\n", "Requirement already satisfied: werkzeug>=1.0.1 in /usr/local/lib/python3.10/dist-packages (from tensorboard<2.16,>=2.15->tensorflow) (3.0.3)\n", "Requirement already satisfied: cachetools<6.0,>=2.0.0 in /usr/local/lib/python3.10/dist-packages (from google-auth<3,>=1.6.3->tensorboard<2.16,>=2.15->tensorflow) (5.4.0)\n", "Requirement already satisfied: pyasn1-modules>=0.2.1 in /usr/local/lib/python3.10/dist-packages (from google-auth<3,>=1.6.3->tensorboard<2.16,>=2.15->tensorflow) (0.4.0)\n", "Requirement already satisfied: rsa<5,>=3.1.4 in /usr/local/lib/python3.10/dist-packages (from google-auth<3,>=1.6.3->tensorboard<2.16,>=2.15->tensorflow) (4.9)\n", "Requirement already satisfied: requests-oauthlib>=0.7.0 in /usr/local/lib/python3.10/dist-packages (from google-auth-oauthlib<2,>=0.5->tensorboard<2.16,>=2.15->tensorflow) (1.3.1)\n", "Requirement already satisfied: charset-normalizer<4,>=2 in /usr/local/lib/python3.10/dist-packages (from requests<3,>=2.21.0->tensorboard<2.16,>=2.15->tensorflow) (3.3.2)\n", "Requirement already satisfied: idna<4,>=2.5 in /usr/local/lib/python3.10/dist-packages (from requests<3,>=2.21.0->tensorboard<2.16,>=2.15->tensorflow) (3.7)\n", "Requirement already satisfied: urllib3<3,>=1.21.1 in /usr/local/lib/python3.10/dist-packages (from requests<3,>=2.21.0->tensorboard<2.16,>=2.15->tensorflow) (2.0.7)\n", "Requirement already satisfied: certifi>=2017.4.17 in /usr/local/lib/python3.10/dist-packages (from requests<3,>=2.21.0->tensorboard<2.16,>=2.15->tensorflow) (2024.7.4)\n", "Requirement already satisfied: MarkupSafe>=2.1.1 in /usr/local/lib/python3.10/dist-packages (from werkzeug>=1.0.1->tensorboard<2.16,>=2.15->tensorflow) (2.1.5)\n", "Requirement already satisfied: pyasn1<0.7.0,>=0.4.6 in /usr/local/lib/python3.10/dist-packages (from pyasn1-modules>=0.2.1->google-auth<3,>=1.6.3->tensorboard<2.16,>=2.15->tensorflow) (0.6.0)\n", "Requirement already satisfied: oauthlib>=3.0.0 in /usr/local/lib/python3.10/dist-packages (from requests-oauthlib>=0.7.0->google-auth-oauthlib<2,>=0.5->tensorboard<2.16,>=2.15->tensorflow) (3.2.2)\n" ] } ] }, { "cell_type": "code", "source": [ "!pip install seaborn" ], "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "rkyeDjbR4Efg", "outputId": "89747bfa-021f-4902-8e0c-862ba16eb0f8" }, "id": "rkyeDjbR4Efg", "execution_count": 2, "outputs": [ { "output_type": "stream", "name": "stdout", "text": [ "Requirement already satisfied: seaborn in /usr/local/lib/python3.10/dist-packages (0.13.1)\n", "Requirement already satisfied: numpy!=1.24.0,>=1.20 in /usr/local/lib/python3.10/dist-packages (from seaborn) (1.25.2)\n", "Requirement already satisfied: pandas>=1.2 in /usr/local/lib/python3.10/dist-packages (from seaborn) (2.0.3)\n", "Requirement already satisfied: matplotlib!=3.6.1,>=3.4 in /usr/local/lib/python3.10/dist-packages (from seaborn) (3.7.1)\n", "Requirement already satisfied: contourpy>=1.0.1 in /usr/local/lib/python3.10/dist-packages (from matplotlib!=3.6.1,>=3.4->seaborn) (1.2.1)\n", "Requirement already satisfied: cycler>=0.10 in /usr/local/lib/python3.10/dist-packages (from matplotlib!=3.6.1,>=3.4->seaborn) (0.12.1)\n", "Requirement already satisfied: fonttools>=4.22.0 in /usr/local/lib/python3.10/dist-packages (from matplotlib!=3.6.1,>=3.4->seaborn) (4.53.1)\n", "Requirement already satisfied: kiwisolver>=1.0.1 in /usr/local/lib/python3.10/dist-packages (from matplotlib!=3.6.1,>=3.4->seaborn) (1.4.5)\n", "Requirement already satisfied: packaging>=20.0 in /usr/local/lib/python3.10/dist-packages (from matplotlib!=3.6.1,>=3.4->seaborn) (24.1)\n", "Requirement already satisfied: pillow>=6.2.0 in /usr/local/lib/python3.10/dist-packages (from matplotlib!=3.6.1,>=3.4->seaborn) (9.4.0)\n", "Requirement already satisfied: pyparsing>=2.3.1 in /usr/local/lib/python3.10/dist-packages (from matplotlib!=3.6.1,>=3.4->seaborn) (3.1.2)\n", "Requirement already satisfied: python-dateutil>=2.7 in /usr/local/lib/python3.10/dist-packages (from matplotlib!=3.6.1,>=3.4->seaborn) (2.8.2)\n", "Requirement already satisfied: pytz>=2020.1 in /usr/local/lib/python3.10/dist-packages (from pandas>=1.2->seaborn) (2023.4)\n", "Requirement already satisfied: tzdata>=2022.1 in /usr/local/lib/python3.10/dist-packages (from pandas>=1.2->seaborn) (2024.1)\n", "Requirement already satisfied: six>=1.5 in /usr/local/lib/python3.10/dist-packages (from python-dateutil>=2.7->matplotlib!=3.6.1,>=3.4->seaborn) (1.16.0)\n" ] } ] }, { "cell_type": "code", "source": [ "!pip install scikit-learn" ], "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "9fVJM4vp4EcH", "outputId": "95eafd84-f32c-4a4b-a9ab-3ec0486ebe20" }, "id": "9fVJM4vp4EcH", "execution_count": 3, "outputs": [ { "output_type": "stream", "name": "stdout", "text": [ "Requirement already satisfied: scikit-learn in /usr/local/lib/python3.10/dist-packages (1.2.2)\n", "Requirement already satisfied: numpy>=1.17.3 in /usr/local/lib/python3.10/dist-packages (from scikit-learn) (1.25.2)\n", "Requirement already satisfied: scipy>=1.3.2 in /usr/local/lib/python3.10/dist-packages (from scikit-learn) (1.11.4)\n", "Requirement already satisfied: joblib>=1.1.1 in /usr/local/lib/python3.10/dist-packages (from scikit-learn) (1.4.2)\n", "Requirement already satisfied: threadpoolctl>=2.0.0 in /usr/local/lib/python3.10/dist-packages (from scikit-learn) (3.5.0)\n" ] } ] }, { "cell_type": "code", "source": [ "!pip install micromlgen" ], "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "LvFn6tnl4EYh", "outputId": "14cd304d-c5d1-4bd7-b4c9-6af236cc6bc4" }, "id": "LvFn6tnl4EYh", "execution_count": 4, "outputs": [ { "output_type": "stream", "name": "stdout", "text": [ "Collecting micromlgen\n", " Downloading micromlgen-1.1.28.tar.gz (12 kB)\n", " Preparing metadata (setup.py) ... \u001b[?25l\u001b[?25hdone\n", "Requirement already satisfied: jinja2 in /usr/local/lib/python3.10/dist-packages (from micromlgen) (3.1.4)\n", "Requirement already satisfied: MarkupSafe>=2.0 in /usr/local/lib/python3.10/dist-packages (from jinja2->micromlgen) (2.1.5)\n", "Building wheels for collected packages: micromlgen\n", " Building wheel for micromlgen (setup.py) ... \u001b[?25l\u001b[?25hdone\n", " Created wheel for micromlgen: filename=micromlgen-1.1.28-py3-none-any.whl size=32152 sha256=0004e20b26a748989a91938b095a57ea272e21f7b751f1deb19968b53ce397dc\n", " Stored in directory: /root/.cache/pip/wheels/97/54/64/5d82c310920abe1be0d120313ceb9e12c88f5701f53f6ed248\n", "Successfully built micromlgen\n", "Installing collected packages: micromlgen\n", "Successfully installed micromlgen-1.1.28\n" ] } ] }, { "cell_type": "code", "execution_count": 5, "id": "cxf2RSmXJhoG", "metadata": { "id": "cxf2RSmXJhoG" }, "outputs": [], "source": [ "import pandas as pd # for data acquisition\n", "import numpy as np # for data processing\n", "import tensorflow as tf # for making the model" ] }, { "cell_type": "code", "execution_count": 6, "id": "966398fd-64a6-4e87-a59f-7f7efe754613", "metadata": { "id": "966398fd-64a6-4e87-a59f-7f7efe754613" }, "outputs": [], "source": [ "from sklearn.model_selection import train_test_split\n", "from sklearn.tree import DecisionTreeClassifier\n", "from micromlgen import port\n", "from sklearn import metrics\n", "import seaborn as sns\n", "import warnings\n", "warnings.filterwarnings('ignore')" ] }, { "cell_type": "markdown", "id": "da6EwHUXBLr2", "metadata": { "id": "da6EwHUXBLr2" }, "source": [ "### **2. Dataset Acquisition:**\n", "We will use the provided rainfall dataset for this project.\n" ] }, { "cell_type": "code", "execution_count": 7, "id": "26760d37-0b57-41dc-888b-4f96562a4296", "metadata": { "id": "26760d37-0b57-41dc-888b-4f96562a4296" }, "outputs": [], "source": [ "data = pd.read_csv('rainfall.csv') # Load the dataset" ] }, { "cell_type": "code", "execution_count": 8, "id": "b2mNI5xxLvSF", "metadata": { "id": "b2mNI5xxLvSF", "outputId": "ebbc73a6-543f-4c37-951e-f0cb47c6ee8b", "colab": { "base_uri": "https://localhost:8080/", "height": 206 } }, "outputs": [ { "output_type": "execute_result", "data": { "text/plain": [ " datetime temp dew humidity sealevelpressure winddir \\\n", "0 01-01-2016 28.4 11.9 37.8 1016.4 147.5 \n", "1 02-01-2016 26.8 13.0 44.8 1017.2 110.3 \n", "2 03-01-2016 25.5 14.6 52.8 1015.7 145.3 \n", "3 04-01-2016 26.4 13.1 46.6 1015.3 126.9 \n", "4 05-01-2016 27.1 13.5 44.9 1014.4 125.5 \n", "\n", " solarradiation windspeed precipprob preciptype \n", "0 216.1 16.6 0 0 \n", "1 215.7 16.6 0 0 \n", "2 221.1 18.4 0 0 \n", "3 216.2 16.6 0 0 \n", "4 208.1 16.6 0 0 " ], "text/html": [ "\n", "
\n", "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
datetimetempdewhumiditysealevelpressurewinddirsolarradiationwindspeedprecipprobpreciptype
001-01-201628.411.937.81016.4147.5216.116.600
102-01-201626.813.044.81017.2110.3215.716.600
203-01-201625.514.652.81015.7145.3221.118.400
304-01-201626.413.146.61015.3126.9216.216.600
405-01-201627.113.544.91014.4125.5208.116.600
\n", "
\n", "
\n", "\n", "
\n", " \n", "\n", " \n", "\n", " \n", "
\n", "\n", "\n", "
\n", " \n", "\n", "\n", "\n", " \n", "
\n", "\n", "
\n", "
\n" ], "application/vnd.google.colaboratory.intrinsic+json": { "type": "dataframe", "variable_name": "data", "summary": "{\n \"name\": \"data\",\n \"rows\": 1781,\n \"fields\": [\n {\n \"column\": \"datetime\",\n \"properties\": {\n \"dtype\": \"string\",\n \"num_unique_values\": 1781,\n \"samples\": [\n \"04-04-2018\",\n \"10-01-2020\",\n \"21-08-2016\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"temp\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 1.9600266457661053,\n \"min\": 20.2,\n \"max\": 32.8,\n \"num_unique_values\": 107,\n \"samples\": [\n 27.9,\n 25.1,\n 27.1\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"dew\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 4.532064757752514,\n \"min\": 5.0,\n \"max\": 27.5,\n \"num_unique_values\": 184,\n \"samples\": [\n 11.2,\n 21.0,\n 23.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"humidity\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 14.533809054667492,\n \"min\": 28.6,\n \"max\": 98.2,\n \"num_unique_values\": 546,\n \"samples\": [\n 65.1,\n 69.4,\n 88.9\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"sealevelpressure\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 3.7061573121763307,\n \"min\": 994.1,\n \"max\": 1017.4,\n \"num_unique_values\": 177,\n \"samples\": [\n 1014.5,\n 1009.4,\n 1000.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"winddir\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 47.07555884115642,\n \"min\": 65.6,\n \"max\": 316.0,\n \"num_unique_values\": 1089,\n \"samples\": [\n 138.9,\n 200.3,\n 254.1\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"solarradiation\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 57.03486504026343,\n \"min\": 52.8,\n \"max\": 330.9,\n \"num_unique_values\": 1194,\n \"samples\": [\n 206.7,\n 223.5,\n 289.1\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"windspeed\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 6.3606694437461515,\n \"min\": 9.4,\n \"max\": 128.1,\n \"num_unique_values\": 172,\n \"samples\": [\n 25.3,\n 39.6,\n 18.1\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"precipprob\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 49,\n \"min\": 0,\n \"max\": 100,\n \"num_unique_values\": 2,\n \"samples\": [\n 100,\n 0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"preciptype\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0,\n \"min\": 0,\n \"max\": 1,\n \"num_unique_values\": 2,\n \"samples\": [\n 1,\n 0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n }\n ]\n}" } }, "metadata": {}, "execution_count": 8 } ], "source": [ "data.head(5) # Display the first few rows of the dataset" ] }, { "cell_type": "markdown", "id": "e3d9a693-bdcd-42f0-8b99-3691ce96af7f", "metadata": { "id": "e3d9a693-bdcd-42f0-8b99-3691ce96af7f" }, "source": [ "**Heat Index function**" ] }, { "cell_type": "code", "execution_count": 9, "id": "ff7a52c2-7d93-4a21-bab4-bb3c230f67ab", "metadata": { "id": "ff7a52c2-7d93-4a21-bab4-bb3c230f67ab" }, "outputs": [], "source": [ "def calculate_heat_index(row):\n", " temperature = row['temp']\n", " humidity = row['humidity']\n", " # Coefficients for the heat index formula\n", " c1 = -42.379\n", " c2 = 2.04901523\n", " c3 = 10.14333127\n", " c4 = -0.22475541\n", " c5 = -6.83783e-3\n", " c6 = -5.481717e-2\n", " c7 = 1.22874e-3\n", " c8 = 8.5282e-4\n", " c9 = -1.99e-6\n", "\n", " # Calculate the heat index\n", " heat_index = (c1 + (c2 * temperature) + (c3 * humidity) + (c4 * temperature * humidity) +\n", " (c5 * temperature**2) + (c6 * humidity**2) +\n", " (c7 * temperature**2 * humidity) + (c8 * temperature * humidity**2) +\n", " (c9 * temperature**2 * humidity**2))\n", "\n", " # Adjustments for specific conditions\n", " if humidity < 13 and (80 <= temperature <= 112):\n", " adjustment = ((13 - humidity) / 4) * ((17 - abs(temperature - 95.0)) / 17)**0.5\n", " heat_index -= adjustment\n", " elif humidity > 85 and (80 <= temperature <= 87):\n", " adjustment = ((humidity - 85) / 10) * ((87 - temperature) / 5)\n", " heat_index += adjustment\n", "\n", " return heat_index\n" ] }, { "cell_type": "code", "execution_count": 10, "id": "7acdb25d-d6fa-43f5-9293-aba2a66d3fde", "metadata": { "id": "7acdb25d-d6fa-43f5-9293-aba2a66d3fde" }, "outputs": [], "source": [ "# Apply the function to the DataFrame to create the 'heat_index' column\n", "data['heat_index'] = data.apply(calculate_heat_index, axis=1)" ] }, { "cell_type": "code", "execution_count": 11, "id": "bfe276d7-0ea8-41e8-962d-94075819d91a", "metadata": { "id": "bfe276d7-0ea8-41e8-962d-94075819d91a", "outputId": "a96df4c1-a546-4e5d-8da9-52f4b91dfdda", "colab": { "base_uri": "https://localhost:8080/" } }, "outputs": [ { "output_type": "stream", "name": "stdout", "text": [ " datetime temp dew humidity sealevelpressure winddir \\\n", "0 01-01-2016 28.4 11.9 37.8 1016.4 147.5 \n", "1 02-01-2016 26.8 13.0 44.8 1017.2 110.3 \n", "2 03-01-2016 25.5 14.6 52.8 1015.7 145.3 \n", "3 04-01-2016 26.4 13.1 46.6 1015.3 126.9 \n", "4 05-01-2016 27.1 13.5 44.9 1014.4 125.5 \n", "5 06-01-2016 26.9 14.3 48.2 1014.2 110.2 \n", "6 07-01-2016 26.1 17.0 58.0 1015.1 149.4 \n", "7 08-01-2016 26.6 16.5 55.2 1015.4 157.7 \n", "8 09-01-2016 26.3 13.5 47.6 1013.8 117.5 \n", "9 10-01-2016 26.0 12.5 45.3 1014.2 124.7 \n", "10 11-01-2016 26.1 14.6 50.4 1014.3 153.7 \n", "11 12-01-2016 25.1 17.5 64.5 1013.1 200.7 \n", "12 13-01-2016 24.6 17.0 64.0 1012.5 195.6 \n", "13 14-01-2016 23.9 16.5 64.2 1012.6 158.4 \n", "14 15-01-2016 23.6 16.3 64.8 1012.3 193.9 \n", "15 16-01-2016 24.1 15.7 60.7 1011.8 162.5 \n", "16 17-01-2016 24.0 14.7 58.3 1011.6 154.6 \n", "17 18-01-2016 23.7 14.4 58.2 1011.2 141.4 \n", "18 19-01-2016 23.5 10.3 45.8 1012.1 180.5 \n", "19 20-01-2016 23.2 8.6 41.5 1014.0 155.7 \n", "\n", " solarradiation windspeed precipprob preciptype heat_index \n", "0 216.1 16.6 0 0 143.886492 \n", "1 215.7 16.6 0 0 164.714809 \n", "2 221.1 18.4 0 0 184.766321 \n", "3 216.2 16.6 0 0 169.873735 \n", "4 208.1 16.6 0 0 163.735238 \n", "5 200.8 14.8 0 0 170.741030 \n", "6 189.9 15.8 0 0 188.981224 \n", "7 185.0 13.0 0 0 182.978596 \n", "8 203.1 16.6 0 0 172.189610 \n", "9 203.7 16.6 0 0 168.927795 \n", "10 212.6 24.1 0 0 178.052817 \n", "11 201.9 16.6 0 0 200.835604 \n", "12 211.4 16.6 0 0 203.264168 \n", "13 209.6 25.9 0 0 207.475417 \n", "14 210.8 16.6 0 0 209.768439 \n", "15 201.5 13.0 100 1 202.757773 \n", "16 187.2 16.6 0 0 200.353209 \n", "17 220.5 16.6 0 0 201.834913 \n", "18 228.0 20.5 0 0 180.482995 \n", "19 239.6 32.4 0 0 171.299693 \n" ] } ], "source": [ "# Display the updated DataFrame\n", "print(data.head(20))" ] }, { "cell_type": "code", "execution_count": 12, "id": "03e1d982-17ba-4819-a17e-df440271ef2b", "metadata": { "id": "03e1d982-17ba-4819-a17e-df440271ef2b" }, "outputs": [], "source": [ "def determine_weather(row):\n", " temp_c = row['temp']\n", " humidity = row['humidity']\n", " heat_index_c = row['heat_index']\n", " # Determine weather condition\n", " if humidity >= 80 and temp_c < 24:\n", " weather = 1 # \"Foggy\"\n", " elif humidity >= 80 and heat_index_c > temp_c:\n", " weather = 2 # \"Rainy\"\n", " elif 50 <= humidity < 80:\n", " weather = 3 # \"Cloudy\"\n", " else:\n", " weather = 4 # \"Sunny\"\n", "\n", " return weather" ] }, { "cell_type": "code", "execution_count": 13, "id": "a8b74b68-eb53-4b24-9857-afb086227634", "metadata": { "id": "a8b74b68-eb53-4b24-9857-afb086227634", "outputId": "31e3be4f-36a0-47a7-d3eb-7718511fcb95", "colab": { "base_uri": "https://localhost:8080/" } }, "outputs": [ { "output_type": "stream", "name": "stdout", "text": [ " datetime temp dew humidity sealevelpressure winddir \\\n", "0 01-01-2016 28.4 11.9 37.8 1016.4 147.5 \n", "1 02-01-2016 26.8 13.0 44.8 1017.2 110.3 \n", "2 03-01-2016 25.5 14.6 52.8 1015.7 145.3 \n", "3 04-01-2016 26.4 13.1 46.6 1015.3 126.9 \n", "4 05-01-2016 27.1 13.5 44.9 1014.4 125.5 \n", "5 06-01-2016 26.9 14.3 48.2 1014.2 110.2 \n", "6 07-01-2016 26.1 17.0 58.0 1015.1 149.4 \n", "7 08-01-2016 26.6 16.5 55.2 1015.4 157.7 \n", "8 09-01-2016 26.3 13.5 47.6 1013.8 117.5 \n", "9 10-01-2016 26.0 12.5 45.3 1014.2 124.7 \n", "10 11-01-2016 26.1 14.6 50.4 1014.3 153.7 \n", "11 12-01-2016 25.1 17.5 64.5 1013.1 200.7 \n", "12 13-01-2016 24.6 17.0 64.0 1012.5 195.6 \n", "13 14-01-2016 23.9 16.5 64.2 1012.6 158.4 \n", "14 15-01-2016 23.6 16.3 64.8 1012.3 193.9 \n", "15 16-01-2016 24.1 15.7 60.7 1011.8 162.5 \n", "16 17-01-2016 24.0 14.7 58.3 1011.6 154.6 \n", "17 18-01-2016 23.7 14.4 58.2 1011.2 141.4 \n", "18 19-01-2016 23.5 10.3 45.8 1012.1 180.5 \n", "19 20-01-2016 23.2 8.6 41.5 1014.0 155.7 \n", "\n", " solarradiation windspeed precipprob preciptype heat_index weather \n", "0 216.1 16.6 0 0 143.886492 4 \n", "1 215.7 16.6 0 0 164.714809 4 \n", "2 221.1 18.4 0 0 184.766321 3 \n", "3 216.2 16.6 0 0 169.873735 4 \n", "4 208.1 16.6 0 0 163.735238 4 \n", "5 200.8 14.8 0 0 170.741030 4 \n", "6 189.9 15.8 0 0 188.981224 3 \n", "7 185.0 13.0 0 0 182.978596 3 \n", "8 203.1 16.6 0 0 172.189610 4 \n", "9 203.7 16.6 0 0 168.927795 4 \n", "10 212.6 24.1 0 0 178.052817 3 \n", "11 201.9 16.6 0 0 200.835604 3 \n", "12 211.4 16.6 0 0 203.264168 3 \n", "13 209.6 25.9 0 0 207.475417 3 \n", "14 210.8 16.6 0 0 209.768439 3 \n", "15 201.5 13.0 100 1 202.757773 3 \n", "16 187.2 16.6 0 0 200.353209 3 \n", "17 220.5 16.6 0 0 201.834913 3 \n", "18 228.0 20.5 0 0 180.482995 4 \n", "19 239.6 32.4 0 0 171.299693 4 \n" ] } ], "source": [ "# Apply the function to the DataFrame to create the 'weather' column\n", "data['weather'] = data.apply(determine_weather, axis=1)\n", "\n", "# Display the updated DataFrame\n", "print(data.head(20))" ] }, { "cell_type": "markdown", "id": "4jcYMC2SERMm", "metadata": { "id": "4jcYMC2SERMm" }, "source": [ "**Data Preprocessing & Visualization**:\n", "\n", "Handle missing values and encode categorical variables." ] }, { "cell_type": "code", "execution_count": 14, "id": "wbtz2oV9KY5_", "metadata": { "id": "wbtz2oV9KY5_" }, "outputs": [], "source": [ "# Dataset Preprocessing\n", "X = data[['temp', 'humidity', 'heat_index']] #features\n", "y = data['weather'] #target\n" ] }, { "cell_type": "code", "execution_count": 15, "id": "e2bddac5-4d2c-4199-b63c-011ae9bce559", "metadata": { "id": "e2bddac5-4d2c-4199-b63c-011ae9bce559", "outputId": "d83d203e-15d1-4ce6-feac-9f47fd1ad180", "colab": { "base_uri": "https://localhost:8080/", "height": 447 } }, "outputs": [ { "output_type": "execute_result", "data": { "text/plain": [ "" ] }, "metadata": {}, "execution_count": 15 }, { "output_type": "display_data", "data": { "text/plain": [ "
" ], "image/png": "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2rULF1xwAfLz81FWVoa77roLLS0tXt6KY+6//37DfQ0aNCi6v6GhATNmzEBpaSk6duyIiy++GAcOHNCdIx3vW6N3796G+w8EApgxYwaAtvXcly9fjqlTp6J79+4IBAJ47bXXdPsZY7j33nvRrVs35OXlYdKkSfjyyy91xxw9ehRXXHEFCgsLUVxcjOuvvx7Hjx/XHfPJJ5/gzDPPRG5uLioqKvDQQw8l+9ZsYXb/zc3NuPvuuzFs2DB06NAB3bt3x9VXX429e/fqziFrL3PmzNEd48f7t3r206dPN9zX+eefrzsmXZ+91b3L3v9AIIDf/e530WN8/dxZO2D+/PksOzubPf300+zTTz9lN9xwAysuLmYHDhxIddES4rzzzmPPPPMM27x5M9uwYQP7zne+w3r27MmOHz8ePeass85iN9xwA9u3b1/0r7q6Orq/paWFDR06lE2aNImtX7+evf3226xz585s1qxZqbgl29x3331syJAhuvs6dOhQdP/NN9/MKioq2KJFi9jatWvZ2LFj2bhx46L70/W+NQ4ePKi794ULFzIAbMmSJYyxtvXc3377bfaLX/yCvfrqqwwAW7BggW7/nDlzWFFREXvttdfYxo0b2Xe/+13Wp08fduLEiegx559/PhsxYgRbtWoVe//991n//v3ZZZddFt1fXV3NysvL2RVXXME2b97MXnjhBZaXl8eeeOIJr25Tidn9V1VVsUmTJrEXX3yRbdmyha1cuZKNHj2ajRw5UneOXr16sQceeEDXHvh+wq/3b/Xsr7nmGnb++efr7uvo0aO6Y9L12VvdO3/P+/btY08//TQLBAJs27Zt0WP8/NzbhfAxevRoNmPGjOj3UCjEunfvzmbPnp3CUrnPwYMHGQC2bNmy6LazzjqL/fSnP1X+5u2332bBYJDt378/um3u3LmssLCQNTY2JrO4CXHfffexESNGSPdVVVWxrKws9tJLL0W3ff755wwAW7lyJWMsfe9bxU9/+lPWr18/Fg6HGWNt97mLnXA4HGZdu3Zlv/vd76LbqqqqWE5ODnvhhRcYY4x99tlnDABbs2ZN9Jh///vfLBAIsD179jDGGHv88cdZp06ddPd+9913s4EDByb5jpwhG4REPvroIwaAff3119FtvXr1Yg8//LDyN+lw/yrh48ILL1T+pq08ezvP/cILL2Rnn322bpufn3ubN7s0NTVh3bp1mDRpUnRbMBjEpEmTsHLlyhSWzH2qq6sBACUlJbrt//d//4fOnTtj6NChmDVrFurr66P7Vq5ciWHDhqG8vDy67bzzzkNNTQ0+/fRTbwoeJ19++SW6d++Ovn374oorrsCuXbsAAOvWrUNzc7PumQ8aNAg9e/aMPvN0vm+RpqYmPP/887juuut0yRjb6nPn2bFjB/bv36971kVFRRgzZozuWRcXF+OMM86IHjNp0iQEg0GsXr06esyECROQnZ0dPea8887D1q1bcezYMY/uxh2qq6sRCARQXFys2z5nzhyUlpbitNNOw+9+9zudiS2d73/p0qUoKyvDwIEDccstt+DIkSPRfe3l2R84cAD/+te/cP311xv2+fW5+y6xnNscPnwYoVBI18kCQHl5ObZs2ZKiUrlPOBzGbbfdhvHjx2Po0KHR7Zdffjl69eqF7t2745NPPsHdd9+NrVu34tVXXwUA7N+/X1o32j6/MmbMGDz77LMYOHAg9u3bh//5n//BmWeeic2bN2P//v3Izs42dL7l5eXRe0rX+5bx2muvoaqqCtOnT49ua6vPXUQrq+xe+GddVlam25+ZmYmSkhLdMX369DGcQ9vXqVOnpJTfbRoaGnD33Xfjsssu0yUU+8lPfoLTTz8dJSUl+PDDDzFr1izs27cPf/zjHwGk7/2ff/75uOiii9CnTx9s27YNP//5zzFlyhSsXLkSGRkZ7ebZP/fccygoKMBFF12k2+7n597mhY/2wowZM7B582asWLFCt/3GG2+Mfh42bBi6deuGc845B9u2bUO/fv28LqZrTJkyJfp5+PDhGDNmDHr16oV//vOfyMvLS2HJvOepp57ClClT0L179+i2tvrcCTXNzc245JJLwBjD3LlzdfvuuOOO6Ofhw4cjOzsbN910E2bPnu3rENxW/PCHP4x+HjZsGIYPH45+/fph6dKlOOecc1JYMm95+umnccUVVyA3N1e33c/Pvc2bXTp37oyMjAzDSocDBw6ga9euKSqVu8ycORNvvfUWlixZgh49epgeO2bMGADAV199BQDo2rWrtG60felCcXExTj75ZHz11Vfo2rUrmpqaUFVVpTuGf+Zt5b6//vprvPfee/jRj35kelxbfe5aWc3e765du+LgwYO6/S0tLTh69GibaQ+a4PH1119j4cKFlmnUx4wZg5aWFuzcuRNA+t+/Rt++fdG5c2ddO2/rz/7999/H1q1bLfsAwF/Pvc0LH9nZ2Rg5ciQWLVoU3RYOh7Fo0SJUVlamsGSJwxjDzJkzsWDBAixevNigPpOxYcMGAEC3bt0AAJWVldi0aZPuBdU6r8GDByel3Mng+PHj2LZtG7p164aRI0ciKytL98y3bt2KXbt2RZ95W7nvZ555BmVlZbjgggtMj2urz71Pnz7o2rWr7lnX1NRg9erVumddVVWFdevWRY9ZvHgxwuFwVCirrKzE8uXL0dzcHD1m4cKFGDhwoO/V7prg8eWXX+K9995DaWmp5W82bNiAYDAYNUmk8/3zfPPNNzhy5IiunbflZw9ENJ8jR47EiBEjLI/11XNPukurD5g/fz7Lyclhzz77LPvss8/YjTfeyIqLi3We/unILbfcwoqKitjSpUt1S6nq6+sZY4x99dVX7IEHHmBr165lO3bsYK+//jrr27cvmzBhQvQc2pLLyZMnsw0bNrB33nmHdenSxZdLLnnuvPNOtnTpUrZjxw72wQcfsEmTJrHOnTuzgwcPMsYiS2179uzJFi9ezNauXcsqKytZZWVl9Pfpet88oVCI9ezZk91999267W3tudfW1rL169ez9evXMwDsj3/8I1u/fn10NcecOXNYcXExe/3119knn3zCLrzwQulS29NOO42tXr2arVixgg0YMEC33LKqqoqVl5ezq666im3evJnNnz+f5efnp3y5JWPm99/U1MS++93vsh49erANGzbo+gFtBcOHH37IHn74YbZhwwa2bds29vzzz7MuXbqwq6++OnoNv96/2b3X1tay//7v/2YrV65kO3bsYO+99x47/fTT2YABA1hDQ0P0HOn67K3aPWORpbL5+fls7ty5ht/7/bm3C+GDMcb+/Oc/s549e7Ls7Gw2evRotmrVqlQXKWEASP+eeeYZxhhju3btYhMmTGAlJSUsJyeH9e/fn9111126eA+MMbZz5042ZcoUlpeXxzp37szuvPNO1tzcnII7ss+ll17KunXrxrKzs9lJJ53ELr30UvbVV19F9584cYL9+Mc/Zp06dWL5+fnse9/7Htu3b5/uHOl43zzvvvsuA8C2bt2q297WnvuSJUuk7fyaa65hjEWW295zzz2svLyc5eTksHPOOcdQJ0eOHGGXXXYZ69ixIyssLGTXXnstq62t1R2zceNG9q1vfYvl5OSwk046ic2ZM8erWzTF7P537Nih7Ae0mC/r1q1jY8aMYUVFRSw3N5edcsop7MEHH9QN0Iz58/7N7r2+vp5NnjyZdenShWVlZbFevXqxG264wTCpTNdnb9XuGWPsiSeeYHl5eayqqsrwe78/9wBjjCVVtUIQBEEQBMHR5n0+CIIgCILwFyR8EARBEAThKSR8EARBEAThKSR8EARBEAThKSR8EARBEAThKSR8EARBEAThKSR8EARBEAThKSR8EARBEAThKSR8EARBEAThKSR8EARBEAThKSR8EARBEAThKSR8EARBEAThKf8foQAyQVYKQbEAAAAASUVORK5CYII=\n" }, "metadata": {} } ], "source": [ "X[['temp']].plot() # plot of temperature" ] }, { "cell_type": "code", "execution_count": 16, "id": "a2b2272a-b25c-4954-8d34-5797f053a0fa", "metadata": { "id": "a2b2272a-b25c-4954-8d34-5797f053a0fa", "outputId": "6818c332-64a9-437f-e4d9-bb6a5bd7cb42", "colab": { "base_uri": "https://localhost:8080/", "height": 447 } }, "outputs": [ { "output_type": "execute_result", "data": { "text/plain": [ "" ] }, "metadata": {}, "execution_count": 16 }, { "output_type": "display_data", "data": { "text/plain": [ "
" ], "image/png": "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FCtcCgTtkKZPkTPCWcIR82MEznNSn47pLoKAwtcCSjgcRmtra8LXWXr3WAQCEpqbmx0olYBHdnY2AkK16gnEbNN5fv29QXj4f9/ijz8cnu6iZCSjepfitxOGoCQ/O91FEbTjSwFFlmXU1NSgrq4u3UUR2CAQCKCyshLZ2aKDcDvCedx5bjmjH647rQ9yglnpLkrGck1Vn3QXQUDgSwFFEU66du2K/Px8kfXSA0QiEezevRt79uxBr169xDtzOTKhQREmHucQwolAEMN3Ako4HFaFk06dOqW7OAIbdOnSBbt370ZbWxtCoVC6iyMwQES3CQSCZOM7g7/ic5Kfn5/mkgjsoph2wuFwmksiMIN05BQaFIFAkAx8J6AoCBOB9xDvzDsIJ1mBQJBsHBdQZs2aheHDh6OoqAhFRUWoqqrCe++9p+5vamrClClT0KlTJ3To0AETJ05EbW2t08UQCARJJCLWixEIBEnGcQGlR48eeOSRR7BixQp88cUXGDduHCZMmIB169YBAG6//Xa88847eP311/HRRx9h9+7duOyyy5wuhic566yzMHXqVFfet0+fPnjiiSfUvyVJwpw5c5JaLoF7EfKJQCBINo47yV588cWav3/3u99h1qxZWLp0KXr06IFnn30Wr776KsaNGwcAmD17NgYPHoylS5fi1FNPdbo4Agu8+eabtp1S9+zZg44do4mNtm7disrKSqxcuRInnHBCEkoocBthke3UEjePrcTfPtmCq0f3SndRBALPkdQonnA4jNdffx2NjY2oqqrCihUr0NraiurqavWYQYMGoVevXliyZAlXQGlubtYkSWtoaEhmsTOO0tJS2+eUl5cnoSQCryALAcUS95w/CBcOr8CQiqJ0F0Ug8BxJcZJds2YNOnTogJycHNx666146623cPzxx6OmpgbZ2dkoKSnRHF9WVoaamhru9WbMmIHi4mL1X8+ePZNRbFcQiURw9913o7S0FOXl5XjwwQcBRLUUkiRh1apV6rF1dXWQJAmLFi0CACxatAiSJGHevHkYOXIk8vLyMG7cOOzduxfvvfceBg8ejKKiIlx99dU4evSoeh3axLN3715cfPHFyMvLQ2VlJV555RVdOUkTT2VlJQBg5MiRkCQJZ511Fj7++GOEQiHde506dSrGjh2beEUJ0kpY2HgsEcwK4ISeJQhl+TYeQSBIGknR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SZgzZ45mvyzLuP/++9GtWzfk5eWhuroaGzdu1Bxz8OBBTJo0CUVFRSgpKcHkyZNx5MgRzTFfffUVxo4di9zcXPTs2ROPPvposh/NFKNnb21txT333INhw4ahoKAAFRUVuPbaa7F7927NNVht5ZFHHtEc48ZnB8zf/fXXX697tvPPP19zjB/fPQDm9y9JEv7whz+ox7j63csCWZZl+bXXXpOzs7Pl5557Tl63bp188803yyUlJXJtbW26i5YQ48ePl2fPni2vXbtWXrVqlfy9731P7tWrl3zkyBH1mDPPPFO++eab5T179qj/6uvr1f1tbW3y0KFD5erqannlypXy//73P7lz587ytGnT0vFIlnnggQfkIUOGaJ5r37596v5bb71V7tmzp7xgwQL5iy++kE899VT5tNNOU/d79bkV9u7dq3n2Dz74QAYgL1y4UJZlf733//3vf/L/+3//T37zzTdlAPJbb72l2f/II4/IxcXF8pw5c+TVq1fL3//+9+XKykr52LFj6jHnn3++PGLECHnp0qXyJ598Ivfv31++6qqr1P319fVyWVmZPGnSJHnt2rXyP/7xDzkvL0/+y1/+kqrHZGL07HV1dXJ1dbX8z3/+U/7222/lJUuWyKeccoo8atQozTV69+4tT58+XdMWyD7Crc8uy+bv/rrrrpPPP/98zbMdPHhQc4wf370sy5pn3rNnj/zcc8/JkiTJmzdvVo9x87sXAko7p5xyijxlyhT173A4LFdUVMgzZsxIY6mcZ+/evTIA+aOPPlK3nXnmmfIvfvEL7jn/+9//5EAgINfU1KjbZs2aJRcVFcnNzc3JLG5CPPDAA/KIESOY++rq6uRQKCS//vrr6rZvvvlGBiAvWbJElmXvPjePX/ziF3K/fv3kSCQiy7J/3zvdUUciEbm8vFz+wx/+oG6rq6uTc3Jy5H/84x+yLMvy119/LQOQly9frh7z3nvvyZIkybt27ZJlWZaffvppuWPHjppnv+eee+SBAwcm+YmswxqkaD7//HMZgLxt2zZ1W+/eveXHH3+ce44Xnl2W2c9/3XXXyRMmTOCek0nvfsKECfK4ceM029z87oWJB0BLSwtWrFiB6upqdVsgEEB1dTWWLFmSxpI5T319PQCgtLRUs/2VV15B586dMXToUEybNg1Hjx5V9y1ZsgTDhg1DWVmZum38+PFoaGjA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\n" }, "metadata": {} } ], "source": [ "X[['humidity']].plot() # plot of humidity" ] }, { "cell_type": "code", "execution_count": 17, "id": "a92df9c2-60f8-43f8-9c41-f81772755b63", "metadata": { "id": "a92df9c2-60f8-43f8-9c41-f81772755b63", "outputId": "2004ac72-e3f0-48ba-b506-69f76729b54d", "colab": { "base_uri": "https://localhost:8080/", "height": 451 } }, "outputs": [ { "output_type": "execute_result", "data": { "text/plain": [ "" ] }, "metadata": {}, "execution_count": 17 }, { "output_type": "display_data", "data": { "text/plain": [ "
" ], "image/png": "iVBORw0KGgoAAAANSUhEUgAAAigAAAGhCAYAAABLWk8IAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/bCgiHAAAACXBIWXMAAA9hAAAPYQGoP6dpAACgR0lEQVR4nO2dd5wURdrHfz2zGTawwLIssIBIlIyIa0AQFBAxn+FQUVFOX9BTFDm9M5/iGe/Ow3AG0FNOzztBRUUJAipJQCRHSQLLknaXBTbN9PvHbs9U91R1mp6Zntnn+/koOx2rq6urnnpSSbIsyyAIgiAIgnARnlgXgCAIgiAIQgsJKARBEARBuA4SUAiCIAiCcB0koBAEQRAE4TpIQCEIgiAIwnWQgEIQBEEQhOsgAYUgCIIgCNdBAgpBEARBEK6DBBSCIAiCIFwHCSgEQRAEQbgOSwLKlClT0L9/f2RmZiIvLw9XXHEFtmzZEth/9OhR3H333ejcuTPS09NRWFiIe+65B2VlZarr7NmzByNHjkRGRgby8vIwadIk1NbWOvNEBEEQBEHEPZYElEWLFmH8+PFYtmwZ5s6di5qaGlx88cU4ceIEAGD//v3Yv38/XnjhBaxfvx7Tp0/HnDlzMHbs2MA1fD4fRo4cierqaixZsgTvvvsupk+fjkcffdTZJyMIgiAIIm6Rwlks8NChQ8jLy8OiRYswcOBA7jEff/wxbrzxRpw4cQJJSUn46quvcOmll2L//v1o0aIFAOD111/H5MmTcejQIaSkpBje1+/3Y//+/cjMzIQkSXaLTxAEQRBEFJFlGcePH0dBQQE8Hn0dSVI4N1JMN7m5ubrHZGVlISmp7lZLly5Fjx49AsIJAAwbNgx33XUXNmzYgD59+oRco6qqClVVVYHf+/btQ7du3cIpOkEQBEEQMWLv3r1o3bq17jG2BRS/3497770X5557Lrp378495vDhw3jqqacwbty4wLbi4mKVcAIg8Lu4uJh7nSlTpuCJJ54I2b53715kZWXZfQSCIAiCIKJIeXk52rRpg8zMTMNjbQso48ePx/r16/H9998LCzFy5Eh069YNjz/+uN3bAAAeeughTJw4UXXtNm3aICsriwQUgiAIgogzzLhn2BJQJkyYgNmzZ2Px4sVcFc3x48cxfPhwZGZmYubMmUhOTg7sy8/Px4oVK1THHzx4MLCPR2pqKlJTU+0UlSAIgiCIOMRSFI8sy5gwYQJmzpyJBQsWoH379iHHlJeX4+KLL0ZKSgo+++wzpKWlqfYXFRVh3bp1KCkpCWybO3cusrKyyK+EIAiCIAgAFjUo48ePx4wZM/Dpp58iMzMz4DOSnZ2N9PT0gHBy8uRJvP/++ygvL0d5eTkAoHnz5vB6vbj44ovRrVs33HTTTXjuuedQXFyMP/3pTxg/fjxpSQiCIAiCAGAxzFhkM5o2bRpuueUWLFy4EIMHD+Yes3PnTrRr1w4AsHv3btx1111YuHAhGjVqhDFjxuDZZ58NRPoYUV5ejuzs7ECEEEEQBEEQ7sfK+B1WHpRYQQIKQRAEQcQfVsZvWouHIAiCIAjXQQIKQRAEQRCugwQUgiAIgiBcBwkoBEEQBEG4DhJQCIIgCIJwHSSgEARBEAThOkhAIQiCIAjCdZCAQhAEQSQslTU+/HPxDmwvqYh1UQiLkIBCEARBJCx/n78Nz3y5GUNfWhTrohAWIQGFIAiCSFhW7zkW6yIQNiEBhSAIgkhYPII15Aj3QwIKQSQoRyqqEIdLbRGEo5B8Er+QgEIQCciX6w6g35/n4fHPNsS6KAQRU0iDEr+QgEIQCcizX20GALy7dHeMS0IQsUUiASVuIQGFIAiCSFg8JJ/ELSSgEARBEAkLmXjiFxJQCIIgiITieGUNfth+GD6/DBJP4pekWBeAIAiCIJzkvo/WYN6mEjx1RXfyQYljSINCEARBJBTzNpUAAN767hfyQYljSEAhCIIgEpIkj0Q+KHEMCSg2qPX5KQEW4WqoTyYIID3FCw+NcnELvTqLnKiqxXl/+Ra3v7sSJ6pqY12chGHexoOYu/FgrItBEEQCkez1QCI32biFBBSLzNt0EMXllZi/uQRnPPY15tGgGjYnqmpx+3srccd7JPQRBBEetT5/4O9kjwckn8QvJKBY5HilegD906z1MSpJ4nCy2hf4u6rWH7J/95ETeOf7nais8YXsI/iQoEc0VKpZASWJfFDiGQoztohWQKG2Hz6sPw+vOi98cRF8fhklx6vwhxFdolewOOZwRXWsi0AQMaGameQkez0UxRPHkAZFh5LySsxZXwyfPziAntLM4kk6Dx+meuHnOB8r9b9855FoFYkgiDiFFVA8EmlQ4hkSUHS46OXFuPP9Vfj3ij2BbV5q7I5T6w92KD6KjiIaID6/jKnfbsePu47GuihxD2smlmXKJBvPkICiQ9mpGgDAoq2HAtu8mhqjELbwqfEFhRJ/qAtKAOpoiETlk9W/4vmvt+A3ry+NdVHiHpWAAlrNOJ6h4dUEKV4Pqmp92HSgHB6NQZNC2MKH9bqv1ZNQCFus3nMMfj9pptzMjkMnYl2EhIHtQ/wyrWYcz5CAYoIkr4Rbp/2IEX/7Dp/+tF+1jxp/+JjWoNBMyBZXvboE05fsinUxCB1kkADpFGwfIssy+aDEMSSgmCDZ68GSHXUOmlsOHlfto0EzfMz6oFBN2+f9ZbtjXQRCD5JPHIMV9mSZzPDxDL06EyR7xUMjySfhw2pQfGTiiQg0/rmPyhpfILcPvR/nYOc4MmThJJKWK3E/JKCYIFnrGctA6sPwYX1QfCSfEA2A6lo/ej7xDc56eh75BzmMSkCR+ZrX57/ejPP+8i2OVFRFrVyEdUhAMYGegELiSfjU+lkNCnXWROJzoOwUqmv9KK+sRTUtPuoorInHL/BBmfrtDuwrPYU3v9sZzaIRFiEBxQRJOp6wvMRihDVqVBoUHR8UkgaJBIFt5zU+P0gudw6tBkUvkIH6b3dDAooAVu2qDS1WHUftO2zYzpoStRENAXZgrPVRm3cStm5lWR3IoNVUkebK3dBaPAJYs4PexJ0k8PBhq5BMPERDgHUMr/H5Qd2Ic8iqv9UmHp9fxopdwSUzqN7dDWlQBLChr3qOsDSghg8r5OkJfJQUj0gU2Gyn1T4/5UFxkBAnWabbOFxRjd++uTy4P4rlIqxDAooAdoZDydgiC9tJkLo7MvBU2eWVNaTijjK1Pj9KT1ajill0tNYn00zeQWTNhIftv/eXndIcG61SEXYgAUWASjOio0Ehx83wYTsJXZMZ1bVjrPu1DD0f/wYT/v2T8Jhdh09gzDsrsPwXWkXaKa56bQl6PzkX20oqAttqKLbeUWTN36wGvKbWrzmWJBQ3QwKKADY3B4nZkcZcmDHJJ87x5ne/AAC+WHtAeMxdH6zGoq2HcN0/l0WrWAnP2l/LANQtDqhQ45NJk+Ug6gmP2km2VtO/ULW7GxJQBNT4WTWh+DjyiwgfcpKNLqeqfYGlG/TYebjC8BjCHtXMBKjG56d5vIP4NU4orImnWqOtIsHQ3ZCAIsDHpl+nRhxR2NolASUynGJ8Hh74+Gcc1mTQrKr1YfHWQ4HU63XbyPQQKVhfq1o/RfE4SagGJfi7OsTEQ7gZElAE1LBLdlPysIiiXjuDiATtmzUK/P3FulCzzmOfbsDN76zApP+uDWyjQTNysIJ4dS1VtJOwWhGtj4nW34fauLshAUVArY/8IqKF6TBjqmzbNE5N1t3/4Y97AQCf/7w/GsVp8NRqMsmSs6ZzqJxkZaCqRm1OUx9L9e5mSEARwOZBIRNPZNF2KMLj6DXYhmzt7qLWTzP5SKE18bz1fXC9nS/XFQuPJdwHCSgCWA2KbuQrTevDhh08WR8IwjmoH3YXrI+bDHo/TqJOda+u2bkbD6p+U727GxJQBNAKu7Hh3o/WCPNC0FswB09bwnbayV4SqmNNDYW7RgyzGlkz+4nYQgKKANUKu7rp14lw0VbvgdJKwYGRL0uiwo6HXkqNHHPYPEt1AqW6cc9ZX4yb3l6OkuOCb4EQouckyzk6soUhwoIEFAFsiKVeFA8RPtpOpNpHZp5w4MnTbKftJbNkzGE1tDJC39md76/Cd9sO49kvN0e3YAmAdi0elp6ts4XHEu6DBBQB7FoZNXrrw1BfHzbaTkKYf4Pq2hS81sqaeDykQYk52jWnRAPlr8dOqbNaE4Ycr6oN/K2NCtRqD2k1endDAooAdpAkx83IolVQaZMpEeHD9sNJJKDEHFUUj84YuWLXUYz6xw+RL1ACcQ+zvpS2arX+hCSfuBsSUASwAgovsZWChLpF1Z75chPZi22iderU1VgRhhg5yZIPSuwJWRNGR0rZdKAc3287HOkiJSTaTyFEcxXFshDWIQFFQFWtea3JNa8vxT8X/4IJM8QrwxJitJ0Eq0Gh/B3W4Zt4gn97yAcl5qizJ8uGM/kb316O3UdORLZQCYjWhEMalPiCBBQBbPZBPSRJCqxrsmLn0UgWKXHRmngYJ1nqQJyBFfTIxOMuzLbxNXtLI1qORESrMQlJkEc6FFdDAooAswulUVcfPiFRPKwGhdm+YudRTGbWiiH48AY8lQaFI6CQzOJ+fv/hmlgXIe7Qrl6s/U24G0sCypQpU9C/f39kZmYiLy8PV1xxBbZs2aI6prKyEuPHj0fTpk3RuHFjXH311Th4UJ29b8+ePRg5ciQyMjKQl5eHSZMmoba2Fm6CHDWjh14Uj1ZF+9HKvdEoUlzDmxUa+aCQ2Sd2aNs/mTWdQ5v0UasZl2iK6WosCSiLFi3C+PHjsWzZMsydOxc1NTW4+OKLceJE0DZ633334fPPP8fHH3+MRYsWYf/+/bjqqqsC+30+H0aOHInq6mosWbIE7777LqZPn45HH33UuadyALOqP+rXw0db01UqH5ToliVRYeuRlweF2rF7oLRLzlGjmWhqNePU7t1NkpWD58yZo/o9ffp05OXlYdWqVRg4cCDKysrw9ttvY8aMGbjwwgsBANOmTUPXrl2xbNkynH322fjmm2+wceNGzJs3Dy1atEDv3r3x1FNPYfLkyXj88ceRkpISct+qqipUVVUFfpeXl9t5VkuYHRi3HqyIbEEaAFotyYP/XYsr+7RCstdDeQpsYJiojaNBqZtJUl3HAm2tU5t3Du2SAlaCH7YUH8exk9U4+7SmTheLMElYPihlZWUAgNzcXADAqlWrUFNTg6FDhwaO6dKlCwoLC7F06VIAwNKlS9GjRw+0aNEicMywYcNQXl6ODRs2cO8zZcoUZGdnB/5r06ZNOMU2BXUR0YPXH3+z4aBwX0VVLZ7/ejM27o+8oJooGM7KaSbpGkg+sYYsyzhQdoprGtOaeCpDTDxihv11Ma7/5zLsPXrSiWISNrAtoPj9ftx7770499xz0b17dwBAcXExUlJSkJOTozq2RYsWKC4uDhzDCifKfmUfj4ceeghlZWWB//bujYIfAvUSUYNX00dOVNXvC9075ctNmPrtDlzy9+8iXLL4hO8kq06troWcZGOHdmAlDYo1vlpfjKIpC/DE5xtD9hlVpRkTz/ZDpCWPFbYFlPHjx2P9+vX48MMPnSwPl9TUVGRlZan+IxIITi+iOLPxZv4/7qJwbquw9agdEGVZJmfBGELiSHj8b9WvAIDpS3ZZPtdMu9f6sRDRw5aAMmHCBMyePRvffvstWrduHdien5+P6upqlJaWqo4/ePAg8vPzA8doo3qU38oxboA6jejBq2tleQGe2vZEFS09oAdP66Ra4VWz2y+HziR/oVmj45iNziENijXKTtXYPteMBoUyW8cOSwKKLMuYMGECZs6ciQULFqB9+/aq/f369UNycjLmz58f2LZlyxbs2bMHRUVFAICioiKsW7cOJSUlgWPmzp2LrKwsdOvWLZxncRTqI6IH18+kui7snKdBOUVrI+nCd5LVO14OCTO+8/1VDpeKEL0DnsDYEPns5/246KVF2F5y3NJ54eQ2EQkorDCpTe5GRA9LUTzjx4/HjBkz8OmnnyIzMzPgM5KdnY309HRkZ2dj7NixmDhxInJzc5GVlYW7774bRUVFOPvsswEAF198Mbp164abbroJzz33HIqLi/GnP/0J48ePR2pqqvNPaBPKMBg9eDPGk1ViDcrJanflzIkH9HxQeBqUX4+dinyhGhhmNSMNNQ+Kssjf5P+tw//uOsf0eWazfvPhSyhsSnzKiRU7LGlQXnvtNZSVlWHQoEFo2bJl4L+PPvoocMzLL7+MSy+9FFdffTUGDhyI/Px8fPLJJ4H9Xq8Xs2fPhtfrRVFREW688UbcfPPNePLJJ517KgdooH1EVCkuq0Stz8+ta2UxNd4+rSc+oYa/Fo/M/bvueDmkm6b27zxizYjWSVZ8jQkzVqPG58fuIycSVpCxKhCwocObDliL7BNpUL7fHlycUbuwIxE9LGlQzHwQaWlpmDp1KqZOnSo8pm3btvjyyy+t3DrqUJOMLEt3HMENby7D+R2bYVDnvJD9Pr/iJEtvwiq871S1OF1I5tK6NaWIyGJWK6vXz85eewDLfjmCwxXVePrK7hg9oK1TxXMNyV5rbZEVaMbPWG3p3IWbS1BZ40NasjewTZZl3DLtx8BvbagyET1oLR4BNC5GlnfrPe6/23aY2yEri3zR5MUZ1Cae0ErVyidk4nQePR8Udpd2xV0thyuqAQAvfrPVoZK5i5Qka8PS/rLKwN+nqq35p+0vq8RDn6xTbTt2Uu1066dOKGaQgELEBCPNSMDEQwOlZfgmHmZ/iFNmqJMs4TyiNi9Do+Eyeb1EfWPJXvPDkhNmrpk/7VP9LmYEHoC/uCYRHUhAEUADY2Rha5fvg+IX7iP04UbxQMaxE9VYv68sxAFWlkMHO6p359GNpGK+CLN1n6gyZaoFDYpW22S27vKz0oT7jleqNSgJWs1xgSUflAYFddARRTYwOSgmnoY0UMqyHDFfEL8f6PPUXP59wTPxEE4j1KDIUFW4+clRYg6dVjQodh1YeetRKWjTGNC3EDtIgyLAbqNMVM96p2H7FV4fo8yMGoqT7ImqWpz/3Ld44OOfw78YNw+KuB4jKRgRQfTGUnbXnPX8JT+0JOors+KDwmpQrFhi9OquUiOgkA9K7CABRYBdQYPasjn0MpsCwVVIE0lAeX3RDlz88iIcrqgK2ffFugP49dgp/Lc+bXc48Gbgeu3SzzHx0LQxAoicZCGrvodHP+UvmqolUV0jrPhD1fpYAcX8eXrHajUolEg2dpCAIsDuuJhIA2ok8RuotH0J6IPy7FebsfVgBd7jrBni5FhjtFhg6AmJOxt3E3rvwM7EJlHXT7IyOWSzvHokybR5TE+4O1WtDismrXjsIAFFgN0maRQiSNThN9CgJLIPihUbu1PomxdCo3jISdx59HxQ7ExsEnUyZOWp2P7WSpvVi8zRZqpO1HqOB0hAcRhqy+YwqqfaBDPxsB1pTqOUkP1O+oDwakzfB4WieKKBSEjU+MiaJlEnQ1baXg1TB1bqQ8/Eo/VBoTxtsYMEFAF2O2hf/YkLNh/E5P+utZw4qKGg1qBwongCeVCMqazxuX69DNauncFkrYwEvPqs0qmfuiiexDQXuAm9Gb4dMwK9MsDHOIjU+VKZqxSvBR+URJkkxSMkoAgwUhde1quAu12R4m+bvhIfrdyLd37Y6XjZEgG91OsAUOszl+q+ssaH7o99jfP+ssDJ4jkO+xy8vjHSYw27XokWvyxTmHEUEGeSlUEL5gax0va0Kw2bNfPoCXfkg+IeSEARYNQmRXH02sZ8pD4tNaFGvXhd6H5F0DN6D9tLKlDrl1FyPDQyxk3ITJ/HeyYnZ8O8KqvRCUWQyUk2KugJ2+TzE8SKQKA165g1x1iJ4jleWQu/X9YV8onIQAKKTUQNXPvBpCZTFfNQp/bWMfFY6KzcnK/Ax5q0OPsdFVCYG1zem6/pUx3PcZIlnEdkhly+8yi+3nDQxhUT851Z+Yq1grdZc4xeojatD8obi3/B6LeWo9cT36DsVI3gLCIS0OgpwGhgFLVv7RhpJW2zW5m/6SDO/PM8LN1xxLFrGkXxKPutyByvLdoRbrEihpHPTaS4d2gn44O4TrLuFfbcjnaAA4C1v5bigucXco+fsXxPhEsUZ1hoetoJoVkBRT/MOPT9Lf3lCCpr/Fi4pcR84Yiwif/RM0IYNXPRjFP7gaRF2CEyGox9dyUOV1ThhjeXOTZw+Q00Cv6Ak6z5+z3/9ZZwixUxjAQyJ1HqTJLMzbH9cqiTLIkn9njmy03o8sgcrNx1VLX96S82OX4vUnqF+qCYjeTRcwrXmniI2EECik1EcfR+WVaZGtLiVIMiyzJKyitDtu85etKZ66tvFrJfMYkkivMg+4g+zvM6mnRLVq5pbhCTwXGSJQnFFv9c/AsA4C9zNqu2J2pIcKzRrsVj1syrp0HRCj0sFO0WXeJz9IwCRh20qIH7/LIqpDM5hgLKf1buxTcbzK3roeXRTzfgrGfm47Of96u2Hyx3xhlVnUmWs9+vHKf/IuKlv/AZ5GtgnyNcLRV7thnBR5atpQknrMMTSsMlUd+YFa1pbYgPirnz9HxQ9ITJRK1zt0KrGQsw+kiEJh6/JqQ0Rk1679GTePC/awEAu54dafn8fy3bDQB4TjMTrHUoa5HRWjxmbcnxMtO34oPi88tI8obfbiRJMqlBoY430pAGxTxWvumQKB6TJ+tpQvS0tiTHRxfSoAiwq0Hxy7IrEvscPREMb/7jzHX4YfthW9eRZSA7PTnwu8ahjlYdZhx6zaCTbOzr0glUJh6DOgy3ipV7me1L/f5QEw8RHtqJiXamT4ix4gNSo82D4oCTrJ6Qk6jrH7kVElAEGDrJClq4T5YNF8KLBuxdP1i+Bze9vdzWdfyyjKaNg6nZfQ45hbCX4dWQoqgx6m/iZWaqMvFw86AE21O4Qhnb5swKHg2x49168Dh+2nMsKvdKFEE7GizccgilJ83lj/JpPiaz/YGeSZPelXsgAUWAsQZFnKjNjSGaZsfxNXtLsb/0FHOejKqaoDShl/DLCuxV9MOMDcwhLqxrHiqNEc8HRXBsOEiSOac+baI2N+eTscMvhyrw4H9/xu4jJ1TbL355Ma58dQkORSHJn9aZ0wkSWeu1aOshU8eFOMkKqrlNbrrqt66AkmDtP54hHxQh9vKg+PwaB9A4autbDx7HFVN/UG3zy0AN43filKpa5YPCqWuzeVBi0Zls2F+GltnpyNUs+ldeWYOstGTuOWwxuVE8THsKVysUNPGY04vURfEEj4wXoc8s176xDIcrqrBy9zEsuH9QyP4DZafQPDPV2ZtqKj4Smr5E1nqZjZYxW6+NUpLgkYLfod5qxromHgeqfNkvR9A8MxUdmjcO/2IJDmlQbCKSwOesL1bNgF/4xr25ObQs33k0ZJssy6pZil4InhVUWgLmzxvPLgTAdjz6HVAkZqZ6rN9XhpF//x59n5qr2v7sV5vR8/FvMG8jPyOokc+N+tjwyqiK4jHjJCtHRoPjFg5X1GlIfjkU1KCwgm00mlC8mCIjxd6jJ/HYp+ux5wg/TYFW66znI8Jitj+SJEnVZ+v6oOhcMtxPY+/Rk7j+n8sw5MVF4V2ogUACigBDE4+ghb88b6uqgy89WYNjJ+JjPZ5KTgZFvwzU1Dpv4mH76/+u+hUAMG7gabj9vNMABOvfbRqUJTv4zsav12exfXL2Ru5+YxOPpLvfFpK5WbZfluFhegK35Z5Zv68MP+8tdfSaPgsCox20td7QBZRbpq3Au0t347dvLePu174Cs9ohKxpdVli3a+IJV7t4kMktVVFVG9a1GgIkoAiwG8Vj5lw3seNQBd5dsgvVtX6c5AoosspT3jEnWaaSjtQLcBKCHYfSoRsN1lWC9U0ihVHHKRqI2GozitQO20m2/vy6+jRxPNTPZbUTLjtZg1k/7cOJCHS41bV+XPrK97h86g9hX98jMKNZ9Rkrr6zBhv1lls5xSvPIEk8+KDvqtVe/HjvF3a99A6KJgBbTmWOhNhvZjeIJt/9rnBb0qjhQyq8LIggJKALs5kEBQgcYN8srQ15chMc+24Ax76zAW9//ErLf75dVWhOrGpR3vt+JB//7c4igwV/RVwrM5JVOwuhut07/0VJ5wsVoUBAJF+x2XgfItrdwZ2mq082aeFgnWYv3H/evlbj3ozV45NP1ls4zAyuUnKgOT0BJ8tY1LlmWMe2HXYHtVpUbQ19chJF//x5LLITuR0qDUl3rx+o9x+JeQ6Ntcx+YXJ9IG2ash8esBkWn/Yfrg8cWN9qTq3iEBBQBRn20bqIfWfs78p2HNoGa1Vnh0l+O4Hhl6ADgl9Wdq9VEbU/O3oj/rPwVi7epvfJ55fNIwQyPyn6rdbdkx2Es/8W5RQ21GDnvCTUoBonaVC45Tll4TJp4AFntg2Iw2FXX+vGflXuxr34GqPgufbpmv95ptmA7ca8NlYFq4b76x/pi3QFVKnqrJrWS+qifry1kaY6Ur9Tk/63FVa8uwctzt0bk+tHCbpu3IpipfVBsmnjCdWBnJiI1DiW9TGRIQOFwsroWm4uP6x6j11lqG3ikBZR/Lt6Bro/OUeV04N3TTvizdol4ux2tdply3mU8jCNboCOweLvfvrkc1/1zGXdFWScwGiLFAor+MSoNi0ODmQRzmWS1iwUa3f71RTvw4H/XYqjG0S/Zgey3WtikXX65Lgx+4HPfmloB+HhlDa7/Z9Dnodrnh98vY+bqfarjouIkG4FEbRKAmT/VPYuyBlC8ItJYlxyvxLtLdqG8soa735IPCvO3R2fk09NghitospfedrAirGs1BEhA4XDl1CVYt0/fxmzWyxyIvE/KM19uRo1PxsMzgyp23odrxymrWiPl23WSDV0zg69BUQQUpR+w2x/w/GmcwGjAF3Vu7PPO2VCM8TNW4zjT6bKnhe+DEvzblP7EosZvcX2OCm3Gz2S9Xt8mp5j3KMsy/rfqV+w5ehIPz1xneO7f5m3DGsa5tlVOOv6+YBvmby5RHWc3b5GVheMi0QWw90+No0VJS8or8efZG7HrcDCqSvQKrn9jGR77bAOmfLmZu998FI9aa2I31X24S32wz/ng/9aq6oAIJX5adRTZclBfewKIo3gkKbSDj1bYJtvR8gbKIxXqaCI70SJ2P1BtRyL0QdEkDLNbd06tGaTFaFE90UyZretfDp3AF2sP4JUF24P7mec8yFlF2grKbNR0ojaokws++xV/MAgezycSC2OeqgkK1T5ZNlU3xWWVeHPxL1ilyRLbt20T/HXetpDjo5FELdLJG1OT3deVl52qwe3vrsQXaw+ott/975/w1vc7cc3rSwyv8Uv9AP79dn7iNivvThTFo31XehrMcJuKtj9bufuY4EgCoERtthH1+/0Km3B8UCJfnrr7BG+0vSRUfXi4ogrtmjUK/LbiYKZg17Gr2pQGRVKtMuqT7S8UECmbv30NSug2dcbe4PY3F+9Ev5ty7RRPhQTzGhS2eErYt/h4/jMmWVErmqC61o9yxi/q0PEqfLfN2DH1wf+tDWh5WD7/me8jE4kIm2iTmuSNdRFC+Nu8bZi36SDmbVLnBlpVPygfZiZMRvJbi8w07nYrpjNWWGetkdpWq/RNXfIzQ0z94S9DofkdTyGfMcB9YnecIPJB8XEWC4xkrg52UUD2No9+uiHk2BMas4cdYcOub0etz48Zy/dg4kdrUOvzczskj6TWTIWz8GKkFmdzwkmWd+yzX20K/M0KkXZQmXhM+aDIlsyQQg2K17nuxOeXcd5fFuDWacEorcv+8YOpheR4wokeTuX20SPSd3CjBuWdH3Zyt3s5gqzRd54i0M5ZmYiIoni037RSlkdHdQu5RrgCSqIlQYw0pEGxiUjV75dDpeJItcknP9+o6gSMGr9WuLj57RWW72lXg1Lrk/HE53V+Axd1a8HXoHjU2R79fvszDK3vjFMYjffCMGNOR8p2ruxssqkmhb5VlKtKkrlk93UalPAbqZN+EKUnqwPRMpEmEsJstNPQu02DUlwmNsXxBBTeGzAzsYuED4oycUji+FQ5tdI4YQ73id1xgqh91/lNaLZFqFVqZyhGt9EKF2tsZOe0q0FhzUmnanzCKB5WM2V1Zs8SKbW9oQ+KiSgeo2PtmN54SIH/GWPllqJ38svhE/j3CnP5K4yIhD+LCLttxUrUc6ScthWcNq+FS0UVP+oG4GufeRMR9jsQ1bVdHxS9+lK+SzuaHmMiMxYcPVGNez/8yTDB3eOfbcDE/6yJG9MSCSg2EWtQOCaeKDUGo/scF4TqWaEyDA2KQmqSV5gHhZ201JnLbN0uJDzaKYwTtYm2izUo2rqoqQ03iid4vtm1eKzcUeWMrXnghz5Zh5NhJlRTymSlHHqc1lzfZBYJEw9b7+sNIgKdQG/xOzscPVGNEX/7Dm99Zy98We/V8MrKO5xtWyKNlFkflLqQe8YHhXFCCfVBqfuXFzYfblceKWv/819vxqw1+/HbN5cL86v4/TKmL9mFT1bvw56j/DWR3AYJKDbhSddAXQPUTsj8cp0PxkOfrMXMn/QdEMPBSED548zwM33a1aCw56UmeYROsmoTj2xb0o9UEiQ7w8C2g8dx70drQrYrabO1A2S42p/A1SSTTrIwrmfR/v+u2huyjZfwzypm3rtZwaJRir4l227El1kzTunJ8CcG3PurfCqcvfar327HpgPl+PMXm4wPtgjXxMN5lez7DVeDUmfiCf5mNSiiKB6uBsXBPCiAc/qU/aVBk9qX6w5wj2Ed+OMlSRwJKDYRdQi80FhZljF77QH8e8Ve3PfRzxErUzSCEVhBo8bn17U1s7CJltKSvdyZhCRBY+KxP+OoDlMLIcLO+ie3TPtR5cysoAhjWoHErv/MzsMncOu0FVi1qy5KQrv+iAgzdazKdMts50XVlJ8Kf0A2I5ea7WSNBu+aCIfZRUqDyr5aO1l29aisDX7nom/8x11HMfE/a3CgTL2mTEVVLXYJVi0G+NpnnkBqJmGhSJi/a1AH3fuywodW0FTeF8/pWxnk9x49iZfnbkXpSWsLwUaqLaQnB32QTlTxJ5HqbNYRKYbjkIBiE1HHz/Ob8Mvq3BaRsv9Fw674w/bDWF2fX+LGt5bj7CnzsfbXUsPzKphZtccjDjNmq9UXhgYlYk6yTAHNlm2fYFEw5Vpak45dp8273l+Fb7ccwoP/Wxu4vrkwY+NoKXYveyjPOVOU9dMKZjpynoDy7pJdoQcaDN6RyJkjScCBslMYO/1HfG9hzR67OG3iYQfzuz5YxT3mqdkb8cnqfRj91nLV9sEvLMQd760UXvtwhdr5+WR1LXfA1F6XB0+I8UjA5OFdQrazNaTng6K0Pd4xyu0e/O9a/G3+Nox7j183IiLVRbOmcV6KCUA9gY0T+YQEFLuE44OiDfe1A29wNDMRtNsZ92/XJHCPq15dgm0HjwfWYPnox1A1v5aKKvWaKLysth5JnaxNDiMPSo2DPiiyHBSU2LduduItMgcqm7VOsXbfEc+ubMoHBcYdJ9ve2LfCC//ULmtgBzNVqxVCt5ccx2OfhYbXN07Vj3CxKxDq1a0sA5P/tw7zN5dEJQ290yYetn/7aU8p95i1v9b51vxySJ0N9ZCF6Kt5Gw+i26Nfq5IWKr4fmw6UB7aJJoQ8M58o3F3lg8KO6AITDy+KR/kOltav97Vi11HuvUREahLJTkXY4ImykzWB75E0KA0IUcqHOrNEqIDCzvaOVlhTC4ruE7otuDFNkBfBTB4JHgU56arfbAZE0QDMol6V1sfPg1J/HeV6vJwyZnHKxirLMm54cxmueX0p/H5Z7SNjsmyi8NuFWw7hQNmpkLJqk9qZRVses4sFmnGSFWlQeK9+xc5joRstYs7EU3eQ31+XYfbnvXxn1AHtmwb+TvF6cNu57dXXiZBt9NcIOyLuPRrUzBlFl1nF4csJ+cMndakH2EGVJ2CIisPXoIQeLUGtZRCtGyUzjvlezjHKN5aVZi9DR0hpBe289GQ1Rv7dvJNyt4KskG2VNT70evIb9HriG/g0rgdOpBWIBiSg2ETPxBMSZuxXO3MdORF+fgf+gnPBfZU1/E7XroCSnZ6s+s2Gk5rpHE8wkR0iu61Sp8q/Pk7ItlmcMvGUn6rFsl+OYtXuYzhUURViggKALQYLS+pxx3srQ2bwdjUo2rqq80ExPo/VEImP4f/N4/VFO4xvaqJMRigOi3+ctR4DnpmP+z/m+3exl3pweGc8OLyzar9tDYrePilygg8PxwUU5ulSOAKDU2vI8ARcKyHTPCdZ0ensM6l9UIKwl+OVQ/k001Ps5Z0xO6n55+JfsGG/eSdlnvPu/1YHAzKqa/1qE098yCeUqE2L2SgVUYfA85v4wydrsWF/UF3Jc5i0it5qxVobL8vh49WADORl8VNHi8hKS4ZHCn7A7CJuZjQorA+KyPlNuYzi8CfLYSRqc8jEww4yWh8Z5R3sOKS/Kqle7azfV85ZkNGmgGJTmjNj4nn00/W4qagtzijIVs29csNMKqdXJiO+3VICSZIMc69c178N+rbNwYLNJbipqG3ItxupdZsilc2Yh9M+KGwV8bSxImHQKtq+Q5KAJJ4GRfB4Po4QKOqb2XuJonjYfpUnoCj9EeuUagWz3ZmZ/uvZrzZjw/4yTLulv0pQ69k6GxVVtaqoTa02mgSUOOWyf3xv6jhRfyBzIk9Y4QRwJuyQ18CUBjjgmfnC8y75+3cAgMt7F1i6X3Z6smrQyGRUnEkCdSnLccbEIwoNVDoWpW7rhD1LxQzgVG4LVmD1+WXVLEx5jHDHhgWb1KvrKlquFTuP4s3vfsGjl3ZDm9wMw+uEmngkkxoUY4Hgwx/34sMf92LexAtUvgHhZr3VK5MRvOUctHz34GDkZ6chPzsN53dsDiBUkLMbxWNUt5FaD4qHiU/QEmybzuCEaYv8TKxOKLTChAS+YCB6PN53Lnov7HVZHxT2m2YnT/xMsnX70+wKKCaPMyNwKprKxdsOacotqUzqQF2+GLZ/iJeU+2Ti0bD1oP5sWEGcB8XYb+LrDcWWy8W7T+g28+d/uiZ04bTZd5+HKVf14B6flZ6kGjTYztfMzP1klXkNivJx+mXZtq20utaZzJ2sqazG5+eaeLSvorLGhyum/oDxM1YbXj8jxYvnv96i2nawvK7zv/aNpZi78WDIfi1K/XNNPKZ8UMxHSz1c7zOgwJMDW2Zb087xcKoDzeCo4rWdf0SieCCp2nykcdrEw16Pp0ERmWGsTgy0EW6SJPF9UHQ01lpEgzurmWG1lKzZW6VB4fqg1N/DRjSf9vp6iN5njc+Pu//9E/61dBezTVZpen1+OUQD45NlVR4UElASHL0Pxujlf7MxuLpn2cka7D5i3Z7LF1DCa3T52WnCfApZaWofFDYKRySfsB8u2wkYaVC8jIBi14wfCQ1KnYAS2jFpo7Jmrz2ANXtL8cXaA4a5HM7p0AxX92ul2rZmb6kq669eVMzhiir0f3oeHudErwBmFws0P7Or1Ah+POHUTP4KI5zqPnmzYABY8fAQXNarTosYCU3H8p1HHInWM4vTJh4WnsAgul+4vl8SzJmMFfg+KPzzWcdYtj9ihVi27eqlumfvaqmvkbU/+eeKBMCvNxTj85/34xFGe/i7f63CG4uCzrQ+WUaV5jut9fuFE0w3QwKKTYSJ2mRr9r2+f56LC55fiL0WPf557et4Za1K/W6WZ67sgb/f0AfNGqcKB7QsjZMsmy1UJBixm9ny8uzGAGviUZxk7QtdTjnJsh96rV9WvXelM9Omdj/G+BhVVNbqJkvzeoAW9f5A7ZlVjLcxuQz0hIxpP+zEkRPVmM7J/1EXxWOMDPPRUtrjfJzznKh7p1YA50ViAHU+WMqq0fbDjMW1G40Vkll+qs9N5BSsUKJ1kAfEA2iVTSd8hTofFJ5zqoy9R0/i6w3FqokPT/ul9B9z7xsY2CZrysymITj39GaBv9muiSfo8Bf9NN/eTWtQBPVrZk2nWl9okMSPO49hxN++C5aDBJTExkoeFD2UQe5Hi/H0ogbGNkKzDO2WF5hNip4rLzNV9Zt1ehU9rqgWhBqU+taolMEfRh4Up5xk2Q9de03lMbTb2aR8RknLan1y4F0OaJ+r2q6gqKOtdyqScBCdeFGnwN/fbi4xLVRrj+NpSyK1DpId9CJCkuv3iQaYeOnEgbrVsJ0sryqNPqcORVqOsDUoksR9ZzU+P85/7lv87l+rMI/x2eKtrq6UvWOLzMA2WVZr09g+SDXpYBq41yOFTESV01RCkoV6N/udsZrsV+ZvC/xtZsVwvyyHvIfxM1argjNIg5Lg6AsoxufX+vz43b+C2RatthcnbYis+YanEW+SkYzT8xqrtonstiwi26yoI+U7ydp7TqfyoLARUbUap13lubWdwVvf7wz8bSSg7DxyItBZpCV70b1VXT4DNix7/b5yfPbzfvR68hv8oMlKalQ9ouF53MDT0Ko+t82b3+3Er8f42W61hGRJjpCA4lTz1jMXKD4JPG3Hxv3l6PXEN/jnYnHI9O4jJ1y1KqyTYc01HAFZwe+XQxz/FcJ993VOsqGdELvg4kpmMsdbADVZYJphu2z2mXjfNBBMHKm9jhYrGjjzPijBv1+cuzXwNy/kO6Q8fhlVgjQTgXLU+6nM23jQkUVkIwUJKDaxshYPjy/XF+PrDUFfFKsChxmBZvgZ+biwSx5+06+17nGsRzpPnfvwJV111dlCAUVwvEh6lzQ+KLyIKLM4JaDsYEwttT6/6pkU/xS91YeNsmr+cuhEYGaT5JECERMnmcy7ZadqcM+/f8Lxylrc/M4K02WXJLF5SJLUkVhm0T4pz8RT65fDns07JYDrrVGj+CTwzAR3/3s1jlfV4pkvNwvP/3qDsQNzNHEyrJmtE+23NHfTQe3hAIBP1+zDBc8vDOu+ksRPolbOamyZ7byFKXlhyoB6UsnWFXs9pd1qs1oH9tcfzGoOrThZa9+QqJlrtVYl5ZV48vON+MVE/hm/P1SDosUny3hx7hbc/t5K/O5f1tL1RxMSUGwi1qCY8+ouKdcswGWxbzFzj8cvOwPv3NIfz/+ml+nrDupUJ9A8PqqbhbJY224YxaP4oMj2w4y31EdjrdlbioteWoSFW0oMzuDD2nwXbz2kqvdnv6obvPSEoVum/Wj4rtbVzw69HgmN6h32tGGCClYcUCWI/SS0y8+bRfssq5iMwiw81bul+9g8r0VWKj75v3MCv/WcRxVTwqw1+0MSj+01qVF6dWH4SemcwlEBhWlnWgGcpz1Zv68Mv/9wTdj3lSBZcpJVBJRLeuQHtvF8WGRZrR0WaVAUgVspgzYKTmn/bP1YM/GYO1ZbB09/uQnv/LDTlEBc65fxv1W/Gh7z/tLdAIAlO46YKlMsIAHFJoLgANORJ1rJ32kNSm6jFOTrhHvefeHpuKpvK/zt+t6q7R6PhOd/0wu3MOnAjUomjOIRnGmYB6W+bs1ERIlYvPUQvtlQjCum/oBtJRW4ZdqPtq7DlvXvC7arOrOv1hejvLLGUFtj5DAZ6PClYIZKbbSM03hMOtBq2azJmstbzRgAjleFpza2azpp17QRerfOwYD2uYa5ftiZ9g1vLlPtc5MfjVnCNfGo/SrEGpS/Mz4RCpe+Yi5/lBGiRG0sSjllWQ5EEz5+2RmB/cm8NXSgnlR2UJmsZZSdrMGFLy7EC1/XmVOUY7UyvDJBYJ2BrQiG2mYto064O6VxftVq/qxkq/b7ZeF6ROwxlXHQxklAsUm4TrLayI8/aPJLGGF0jzSNM1W3lsG1Gv52fW/cf3FnvHRtb1zeu5X21BCMlnJnO7bKGh++XHcAZSdrbGtQgplkw1sxYpwDqkutA6W2RHe9vyqgTi0QCIQ8dev/cZaD/3lvKRPBFP5sWHltvNenzYrrNOWnwssBYvfx7xnSER6PhI9+V4S/Xd9H91jWlHCgrFLnyPggHA3K7LX7ceaf52FZ/SJ4KiftMAWfW85pZ/pYjyQJ18lRePO7nVj2yxHV5CHVGzRTJyfxNCjqdbRuOaed6nudtmQnfjl0IpAePqBBEZh42MHdSv1o39DnP+/Hpa98HyIgazV/RgIHizbaUHSME31MpCEBxSZCAcVvrnMNVwVu1Li0a+68NeZM3H3h6Vg8abApoQQAbj23Hbq2zMLIni11j/NrzB7/98FqjJm2QiigiDpSKaBBCQ7SsXZC1JZVW5wfth8JzDDPYcIVjeD5bvj9QbODzy+bSqetVzuBWSBnnyQZJ/fq0LyR7n49jJyDjbH33s/p0NT4oHpEOVL0iHV71OORT9eHJD4zy4QZP+HIiWrcMq3Ox0nlJKvjY2VEYW6GSrthRF0eFOP3cuNby9XZUxmhRvRe2UE7LdmL3w/tCKDum9Z+59qUBwrK+6+0qUHRTiwV88qavaWq7VoZbR3jJGzmHkZa3XgQTgBKdW8bPQ2KmU7MyMvaCOUW7Po4LMc06fQLctJx/8WdQw/U4bFR5joW9nFn/rQPQN0HJ9J/mM2D4pdjH+rJztJOa9aIK3Qp5gAr69LwnkuGrBbOwkxXFlRTSyGSlZk0+FZ8AbSU6ySXM4PZ196uaQZm3HE2Hv10PTq2yLTkV2NmiQa75YoFczcexP7SU/jinvNRVetDapL1dOxKWL3IxGNVQLuwS561Akj8KBwttX5ZlZGbbau8UFy/RoNSZ+Ks19Ryrq/1h1PwyTI2F5erfNOs5EExU33hmhdr/bKhWdmpIIJIQxoUm4i+IZ/JMGNtpj/A2mCsSOIZKUl40YITbDiwjmjqsgT/ZutFqEERPKeixfQGBJTYLwrOeuj7BOVROoMmGeYFlOHdQ7VSfjn47GbbkR5BRz8+RsNAOOnTyznRFVYwOw6+eG1vFOSk460x/TF5eBfb9+vM5MzQw+0pwjfsL8ejn65Ht0e/xi8Gi1jqoV59vRpvf78TJccrLc+8rQq5koVzWKfcJI+ERy/thmaNU/DnK7qHHCvLanONxGQx5Aldom/nq3XFGP5Xda4pJ8OMv1p3AJ3+9BUe/3yj6Wtq8QmieNhcVlqfF7diWUBZvHgxRo0ahYKCAkiShFmzZqn2V1RUYMKECWjdujXS09PRrVs3vP7666pjKisrMX78eDRt2hSNGzfG1VdfjYMH+aFrbkUUHSDLfPW9lvmbQ6NKrCQ5Uhq6JAEdWzQ2ONoZXvxNb9zPJPhSYD9w1RoVguuIPlIpMOOv+13nJGuvrE6hWnNIoB1T3ls6s2bJree2E15zcOfm6FuYE0iOpyDLcjDNv0nzlt4hIjt6AAMBJJYalGiIpuzAUmFy3Ry3CSg8bcF7S3fD55fDijDShs4+NXsjbp32o3BycdPZbbHkDxfiDyPUQqJlAUWwFo8RXo+E285rjx//OFSVoE2BV2qJ2adtb6Jvh9dHW9GgGHHXB8brd/HweqRAf3K8shZzN4aOp2y9VoaZ8TdaWG4JJ06cQK9evTB16lTu/okTJ2LOnDl4//33sWnTJtx7772YMGECPvvss8Ax9913Hz7//HN8/PHHWLRoEfbv34+rrrrK/lPEAL3ZpZm4eF78vhW1G7toFU+dd3Vf/dwndkhP8eLiM0K1KGynLak0KIIoHsGMg7cWT6Rs/scra/DS3K3YXqLvHc+W1e/nCwRfrD0AAEhmBguRNuXhS7pg2q1nQZIkVWp7BeXZax0QzpSxQbRgoNHYEY6A8td529DuD18EMiR/umYf3mYS2Blhts/v0ybHRunqYLUB+0pPYbWJdPEuk08i5ujM+0Y37C8P0aC8dfOZ2DnlEjx1RXcU5KTjdwNPw9f3BlPMWy2fKNW9Fm3blFhzJgdeP6JnDvQYXI/FyrIGkRJwVz9yESYN0zfhs87HrJOvmey0scKyD8qIESMwYsQI4f4lS5ZgzJgxGDRoEABg3LhxeOONN7BixQpcdtllKCsrw9tvv40ZM2bgwgsvBABMmzYNXbt2xbJly3D22Wfbe5Ioo9d3240IsGJ7VD44jxTaSd92bnvcxYkScQLeyqZsnyWZ0KAYRvHU/zHxPz+r0jM7yVOzN+I/K3/FG4t2YMufxe2ZnTEa+YUkez148vIz8OOuY7ikR0u8VJ8B8sXf9MKw7vn4cedRFDFOnKmauvTLUGlQwu3MvEEJhUskTTxKBt7fvL4Uu54dGVDHn9UuFz1aZ+ue+8XaA3h14XbDe2SnJ4e1SJ42+uLluVvxr7EDdM9xmwYlUtQIvlGtBsXrUefTkSQJnfODGgxtBKDXI+maiTySuTwoHgmwogPQe2u8V6qUwUzzsmL20ms+dn1PrurTCtnpyYbCIBu+zZp4qmr9eOmbLThQVonJI7qgWeNU3ukxwXHR6ZxzzsFnn32Gffv2QZZlfPvtt9i6dSsuvvhiAMCqVatQU1ODoUOHBs7p0qULCgsLsXTpUu41q6qqUF5ervov1uhJ1nazS1oz8dT965EkeDwS2uTWpS0fN/A0PDqqG5pnRqaRpXEiS9hvLhwfFO2sJVLCSdmpGvxnZV04oVE0Fau+9RskjktN8uDmonZ45YY+qlnJ5b0L0Dg1CYO75KnqT5u2WoYzSeoU9KJ4AOPZYbiRZjzW7zeORhg/Y7UwlToLT1i2gnZg0Vu3R0FvLIqFXV+rHWO/+3CUKyItsLbOGqXqz3G1wsa1Z7bBmKK2+OdN/fDRuNDJqAR+HhOjchjCOVxl4tHst6ZBsd5v8/hg+W7T11GYPLwLnrumJwAgMzVJN/KPbd/avvXvC7bj41W/4jHBquixwvEonldeeQXjxo1D69atkZSUBI/HgzfffBMDB9ap/YqLi5GSkoKcnBzVeS1atEBxcTHnisCUKVPwxBNPOF3UsLCr/k5L9oSsNKlgJZxP+UCVD+jDcUVYsOkgrunXxla5zJLGiQxQZpW1Pr/aB0Vk4hHo75VTbQRXWOKp2WoHtMoaH1fwAtQdoZHTLmvjbZObgf8b1AG5jVKEiadStfdkfFDMro2jh5EPilE1bzpQDk4AkC689s36d+w+Ym3Vbv17WY9SYdE+f/tmxr5cehqUKV9tCqs8dpAkYOx57QPmM1ZICsf8I5pEsN/uVX1aoX+7JrrX0WrhBrTPxRV96tIcHCgLbeOSJF6BmsWOfKJ9dUrReP1UcOFS42tbS9QmPnZ7iXWn5p6tswP9iyRJaJaZgr1Hg/XKfo8pzKTpoDaTeT07bJQhkjiuQXnllVewbNkyfPbZZ1i1ahVefPFFjB8/HvPmzbN9zYceeghlZWWB//bu3etgie1h99vXS3pW7TM/A1M6SmXsa5WTjpuK2gUykUYKfhppGQs2H0THP32lMm9ZT9SmDjOOFKs16dm/4TiUKbCdj8+vr9XQOvc9OLwLbj//NOHxqRwNijLL+XTNfvGNVOfoq8sBsQ+KmWq2+iZ4azkdZtYj2nvUQQHFRhgty5V9W6sWwRT5UrHIOpPlOev5E6xI88il3bDsoSEA1AkgRe+dh3YgNtKgJHslvHRdb6GGQWnHAzs1BwAsmjQIf7u+t8oxnN8XSqbCjK3C90ERHx8sm3FZLKW619m3fKf+ivb92oYKg1oNlvabUNb2AtQaFHYRVDfjqAbl1KlTePjhhzFz5kyMHDkSANCzZ0+sWbMGL7zwAoYOHYr8/HxUV1ejtLRUpUU5ePAg8vP5YaypqalITXWPXQww7/WvRc9mbkWlHsyDEmF1gwaeh73fD4x9dyU3jTMP0fccTHXv/DMpK/cCoR2TnlMzO2M8drImJAMwi1EGTC0pGue0Hq2yHX12j4Ed3Yz6mpdDRfd4Tod+5ESwM9SrP6ukhSmMN05NwryJF2Dqt9vx/NdbhOsfsehpULQ+RdFAqW1lYqL2B6v7t6rWhxqfjMY65phkr0fV/4gGXUVAMdIgL31oCPYeO4m+hXWDatumjdC2qdopnNfWzaS6twM/ikfsLxdIGmlGg2IpD4p9DUp+dhruOL893vwu6GzeSPMNaPuUjBQvjtYvM9WrTQ5W7ykFAByu4JvP3eZi5WhLqKmpQU1NDTwaG6LX64W//iX269cPycnJmD9/fmD/li1bsGfPHhQVFTlZHMdJ8ki4oncB2jdrhJ4Gjn4i9D5sK9FqSkcZfQGFo0ERiCKij1GU70Wb6t5J2Etq34HeBEjbUeuFbppZCl1UJgC476JOjj678qrECwY6zwhOrpwjTGdoZbZpRJsm6cYHmUB5b2Z8CfQElHA1OuHA859RynrBcwvR/bGvdSdVbNsd884KYWSKYqIzysLbPDM1IJxYKbNHMucLZBW9gZe3L6A/cdzEY/rQEJI9Ev44shteuaFPYJtWg6IVUBoxGpQHmESdvx5zTpMZSSxrUCoqKrB9e9DDfufOnVizZg1yc3NRWFiICy64AJMmTUJ6ejratm2LRYsW4b333sNLL70EAMjOzsbYsWMxceJE5ObmIisrC3fffTeKiopcH8HjkST89fo+kGXZdker9/FZyf3A5kGJJlK9l73aN4N/rDCKxyAPio0M5IawQpFWqNMbdLTmKD3H3WSL4XrabMKNU5Mc1aAYJmqLgImHN0svZXKiGDk3fv6zOdNWl/xM05mOjQj4Ipg4VtdJNga5JSQds+iJah9kWUZxvb/BT3uO4fyOzbnXSUnyAPWKrkVbDwnvN/qt5QDsa5BZuBoUSCFm5JQkT9jZVXl9a/C9iyUUMxNAp5xkjVA0S2yZWAEECJ0kDerSHFsO1qVSaJSahMdGdcMTn2+0vMBrrLAsoKxcuRKDBw8O/J44cSIAYMyYMZg+fTo+/PBDPPTQQxg9ejSOHj2Ktm3b4umnn8add94ZOOfll1+Gx+PB1VdfjaqqKgwbNgyvvvqqA48TYZgZqWTzReo1eCvSNRvFE22SNAKKLIg4seqDEgztc/6ZWKFI26HoqV2thJVaTTClHdAkh2ePgXoUOsmaMfFYuyfvcDOmA4W7//2Tqft89Lsirr+LHdilFYwQtZU/z97oiGOzVfRm+scra/Hop8GojJveXoEnLjsDYziL99lJjhYuPG2hJKnX4vnTyK748Me9uuYPM21UTzutq0ExvrS1MOMwBADlHbF9WUaqvonnmr6t0aNVNnq1zgEQGfNZJLEsoAwaNEi3Q8/Pz8e0adN0r5GWloapU6cKk725CXatG7axWlnzgyWc5FcsQROPI5ezhNZebVUaFw36ovUvnIDtRLRJ8vQmQFbMblZNPFqHZgnmckCo0OnvjDQoZjRVdUKMtU71/I7N8N22w4Hf7NL0K3YexU97jqGPgfpfRPPMVAzs2Nwx4QQItjuVkyz4Ty1q629ZSEIXCXjfTNmpGvxr2W7Vtsc+28AXUDgrAANAflZaQAPjNLy2LkG9Fo9HkgyFdrv9hdKHy7J4MmUqzNjSEiWmDw1B8Tdhfea0gqV2/aWUJA8u7Rl0TE6JdIikw8SXOBUDWIlTtZaDzevpalAsXEcxWUTCodQIrQpWqGWwGcXjlBCnveeyX47ggY9/Drm/3tIEVjQoek6IPC7vrU517/RjB8OMRT4oEbDxSJIqMgYIdf6+8tUlFi8aZMXDQ/DCb3raPp9HcKAyfteRTNTGCl2ms3sGhPrQXWz0lBEiDcoFnfgmISfgCiiSpOpzPZJxZlk9v63z6lcYH312YYimRfkpIzQBo3bZDT3MZA4PEEb7aVnv6K+nhdS2G+17tbOCdyyJr9LGAFaaZzt0u5N8vcH3iqk/oN0fvsAbi4zX0IitiUfdbEQCh+g7Em2XAp1tZASU6/+5DP9d9SuOaPxI9DoYs/3JLee0Q2HTDEtlSk3yqgZzp5/bY9DJRsIHpe4c9Vnh+g+ori1JtrWXIgIaFBPF5AkoTq24zXYNikre/LmhdbKv1LzJSaT9M5OTxC4iEw+rMfF6JJXJh4dec3jz5jPx8Z1F+N3A0Mzaeucpu8x8k4qT7NpfS/H6oh26/YmVtPhaCrLTAAAXdW2BlCQPzmGyUitoTTwhAorB+0zoKJ5EhBUoVBoUm52kGR+DKV9tNpzNyTE08WjVhCIvdqGJxzAPShiFE6A3hogS59WdZ+6LnXhx6CKKZkgRaOhYrtBoWswOiAaZ7k3htA8KAGSlOZ4fMiwCGhSmvYrXdAnd5pRWRZ0y3uQ5Fo8HgJ2HT4Rs0w5s2utHAnGYMVsP4Zl40lO86N8uF16PJBx8uT4okvpfHs0a1623pWg0LvvHD3j2q82YsWKP8Bwr2cK1KBqUJo1S8POjF+N9zrIMWkFT+9vI18htSzmQgGKAysTjwPXMmi94q1GyxFSD4jWnQRE6yQp9UCJr4hGht7Kn2Q8206J5R4GdHEqSFCKYSlJop3LApE+AkYnHDFaSfYmoqlXXb68wFviLBDwnWWGIPGe7mdXLzcDWtNXvuk6zZO7YZzkZb0WnRj1KEGoTT50GxcDEY7O/UNq2Xo4UvfdwUbcWAEI1sGv2lgrPMaNNFJmK2VxO6SleroCn1ZBofYuMhD3lG5j+w060+8MX+OPMdYbljSQkoBig1qCE/7Wa/ZjG/WuV7v5gmHHsfVBEiYpE3bZRHpRI+NXohYBW1or3mR177L4HrQCgvY5HCg27ZLOx6hXPaC0eU+WzqkHhHK/VoERijZ9wUJqbOR+U0G1OTTrZujPrKsC2F7NCzUnOmkFGyRO1dG6Ryd0eLiEmHhMaFLtdYOA8GxqUm85ui/TkOkHixfpFQRX0JjxmBBRRCLeZ9dW0k5mQ3wa+TUpf/vjndcuBzK5fqT1WkIBiQJLKB0UfM+OqUxoPXwxNPNrFvMQaFP52wzwoYdaR2QgPZR0RbT4SFpEGpVGKN2CqeO5q+06b2kfVJsLzSKFCi9mwRqO1eMxoh2z5oGhO0tavkz4pTqCUV7QqNwtXg+JY8jnrwoZKqDH5srLSQr8PI8d1Le+NPcvczQz48xXdVd+rBE2fKxlP6uxrUOpYu68Ubyz6RfcYLR5JvZYQW396i0aaMfHwfEvMou0/tMKd0UKMPo25vozJYRQLSEAxQNX4Db4DM51KuOaLWp8ff5q1DrN/PuDI9eygvafIq1ycB4W/PZhJ1m7J6mA/yqeu6C487vS8ulmg1gTBIhp72uRmYO3jw7Dr2ZG4tr/9BRq1j6q1Gdfl3NGWSZ2DRkRQE2XenyKkfA4I1F+tV8/C3KZBsRLFwzvGKbu9qquxUe9mz+H5homeQXTJFllppsulx41nt8WkYcEMp5JGY+j1hGpQPhx3Nu68IOj0aj/MuO5fPR800bUlSVLlU2L/1rueGeH8+rMKDY8RoTW/a9uE0XIcTpkrnYIEFAOSLfigmPlOwjVffPLTPry/bA/+t/rX+ntGX0DR3tLqDFI0EISzWKDi4Q6oBShRuObHdxbhtGZ1a4PYcZJ1atasfX8pmjwGHil0Rmb21kqUhKg6TQko5m7FHB96htakUC0QCFft1l8sLVJYSdTGO8ZKrhw97GhD2MPMZjQ9wlmHRdSe2fd579CO5gplEfZ7rzPxeFT7tFE8Z5/WFH8Y0YU5xvky8cKM2X7FI0no3y438Pu+j9YE/tYTWPUmQwots+0Lf0YLLWZytGcsB8urTAnq0YIEFAPU6kYjW6jxl2IlUyiv0zikyW0QCxOPVoAQaVBEH+rm4uPc7YFMspyH0lvWPbdRiuqcJMHf6uvlBhZ307MZW3X0tYqxiUcKqccx76xA2cma+vPFDcBobSNTWS0j0L5Eau5/Luar2RVuP6+984WBOFGbwvHKoJo7sk6y1k08LGaLwVuuwYwW6LcDCpGR4lWtSOwE7KRfgvob8Hgk5GToD6r2TcLi85Q97LXZ78gjAbeeG2yPX5lcydqM9pAXafPk5eaWdTCK0sk2qEsAeH+5OAop2pCAYoAozJiHGWHBymJwvHVJtKfHIopH+5xWo3hESDoD6vkdm+PCLnn886CuB1ZY0TOBmVkkTuhH45QGRVsmjcbHI0n4/dBOyNM4yL31/S/4Yu0B3UHdKCrKzCNY1qCYOOFUNb++9d7VdWe2wZ8u7WaxNOZQyizLdSG4r8zfphqwFYH612MncaAsNILKuTDj4N+mNSg2vv9jJ0P9CkRtgTW35GWmYfUjF+Fv1/e2fE891BoUtcbEIwEPDu/MO417vhV086Bw9rGKHI9HQkqSx3L2aMXEc0n9oppKJBBLsjcYuTSqVwE2PDEMNxe1M3V9o1T2ZvzzpjFZkVlNVSwgAcUAVUy+A9cz8s5/dXTfwN+8zjDkejHQoGg7RVFCKKvddsDEw6kjjwSkCZazlyRJVQ/aRE8ikgICil4mWf52pwQUbec6ULOYW5JXQvtmjbD84SHozYTnVtf6MX7Gav2L119a1ObM5FOJhAmx/FQNV/DTG2gimTE5aOKRccM/l+HFuVvVDrMATlTV4ry/fItbp/0Ycr5zidrMa2vZspkl6HMRqjHkCek3F7UNMZGmJXsjkChP3ceqfFAkCXmZaehbmKNzvrn7dG2Zpfqtd5pSJNXEh5OnRpQ/RoTSbxSd1hTrnxiGRzlCd4rXg2m39MdVfVrh/os6haxYrIeRj0mjFBMrbktAi6y6CZGSiTdWkIBigFdjD9XDTD9l5NTaoXkwsyivsRmFpUYD7SOIHL+2HeSbcsTXFfug1DmL8p/VI6nPYcPx9ExqSv3qaVCU2fFYjXnBqUFJ+6hNGqWoEjAp5dcKYeYicOo1KII2YsY0YTnMGMDVfVvrHlPt83P9fvS+r0g2c3ZNFt66MzU+WRWxoSWc5FsinJTHrunXGjueuQRL/nAhAOBkdW2IgMj7hvsU5uDWc9ujdZN0jB8cmonVKbRaavabVQRT/bZhrrLGDz4dd194Oj6fcJ7hecq3o/JB4QgrVld1Dqyh5pGEq5cnez0Y2Kk5XrquN9rV+8mZxcjEY3W8iMHwooIEFAO0IW+6mBizjIQc9mPlNTbt6VZMRk5hVqVqlMsl9Lri63skSTjlkSSghvFULGASGumlyVbqd8mOI3h45jquVkTZpM37EAm/A4X2zYOdkmgGZ0Y+CvigiEw8joXHqulWkIUVDw/BPUNCnSoVofCZL0OThemVJpKtnOeDwuLz81frVrAbNt0lX92m1CYekxoUE4e1b9YIXo8UmIn75bplNdhy84QsjyQht1EKvntwMCYNi5yqX/vcWidZ9l8eZnPGpKd4cf/FndGjdbbpMolMx3oC5Mb95Xh14XbMWL4Hl77yHYoZTbg2wSZPo2GUq0QPo1T2ZnGLnywJKAaoO3f9l2/G6dBIglU5eJpobLFY+ylSfi9K3fAGVI9YPoFHklQzctbOqqdBYffNWL4HcziObspMU6vKjdDYDiCYQhuoMy0oqAUU89oPkYBiSoNieAT/nnlZadwIqmaN67Rb/1q2G6v3HLN83Uig1KuoOmr9ft0v2+76KtrvyI6AYgalnWckBwfDn38tw7xNwWzVPCHLiUzEZtC2z2RVmDHqyyA+37YPipljWA2KJopHxPGqWjw3ZwsenrkO6/eV42lGGNcuUcKLqjEy0+jhxIS1qibY3p3IJB0OJKAYkKxaF0L/WDNSp5Hqti2z4BxvjRvt6bFwko1Um+XNWhQ8kniROO3xPFsxD62Giqfe9wsElKaNUkKOtQOvfOyS6SeYEF32WHMhwvqzT55lQts+wxmcePdt0yTYvq2sthvJGZ1SyhW7+GHOtT59Dcp32w7Zuq92cmG23aoxPlAZWJO8aqfO3UeCGYl5AoqViMNw8KqeWwIve7defdgdlPUmd8oVRZl6rXwX+46dxPaSCgDBiY3eZMyq4y2LnbxYnVqoVx8/XlkTaO9k4nE5rLrR6F2ZmdUaCRSSJOGqvq0A8J3ZtKe7wQfFKZTL8q6vY+EJwezyBFoNFc8XRelQtJ1Gj1bGamIzWHl9bNsxk6vASIOiNfEM6tw8RFNgXYMSOvtlOa252Kau90yR1FgZfUO1fllXO/rnL0LNVWYoKVcLaGwpnJx4sII462j+lzmbceh4Ffx+mZsqIFqTH9UiiVCXVxE+9MqSmmzC8ZOD7irJimDEbGI/I+XvZ67sYXif1XtKMfSlRVi4pSTog6LzPEZ+JHpYNfGMH9wBEy5Um2LrggeUpVRsF8URSEAxwIoPip2wzYGdmocco8ygeevHaFVubsiD4hT6Jh7xYmjafkYloOjcT9sR8GaRIg3Kn0Y6E/JqRYXKPqeptqZTn0CoiSdJs+LrpT1bhtVB8dpJd0aw0woGeo8UyeRRRt+Qzy87loyNRSsUqGfr5q5h5v3oCexLdhwWOvmK8hs5TYiTrCaTLKDf54ii+4zQS2rGmyzxTDy/HVBoevHLD5bvCWpQmO0vXdsLZxQEI4zCEVDYerqAM7ZomTC4Y8i31a9tk8DfZOJxOerBLvyXxX5n53dshvduOyukk0mp/0D/Om+bYcccmzwoERJQlH+5Jh59HxS93yK0tt6X5m7F2c/MVy/Gp2hQGAHlN/1am0p4ZAa7GpRwfFACTqGaAUib8fXFa3shHHueSNBU+MP/1qoSDxboZNCM5DLwRu2l1u+PyP21Ttl2NChmjmLbufY5th2sEAoo+46JI5echB2P65xkQyeFetWRlmRPg6KXMyR4X76JRxXMYFKabNY4JeiDwtz6qr6t8ebNZwavF4YPCqvxn8qkrOBxUbcWSOc46VbX+slJNl5IsuCDYo7Q2Yy2MRxlEilpF2vSliEWAkqkbhkcUEP3eT1iHxTtVvWaJuL7JXFUvMXllRj7bl2ui1qfP2D2YQWUcLzstVh5f+zz7zpywvj4+n+1NnoldNHISTY1yRvWuxY5OyscOVGNxz5bH/itl+/hhM4CbOFi9Iy1Pr4JJFz0cuk4abpVtXPNLf/x7XZ8tGJv4Pfyh4cgs34RzP7tcxENVCYeSV3e4HINzmtQ9Pw1eBoUthrZ4pjVeKR4PYG+XvvdF+Sk489XdMdfr+sd1rtXa3nsXaOq1hd0ko2xicd8BpgGiteCD4oZ2Bcuuh4rkReXVyIno84h85sNxSH27oQy8ejk7eAtmicqjzrxk7isInvt1oMV8PllXPTy4kBqatYHxcml5q1UJVvcH7YfMTw+mPhOfRNltqYdIHkdttU3bRSJot22ufg4bn93Jdo1zeDO5hROWMw3YQUzGhRfBGw8tdprqswJ5q5hpv2w7fw4px7f/K4uG3GSR0KLrDQsnjQYvx47ZSoc1wlUTrLgC6p6/VyqTQ2KnqYi4JzLvBReHhTAvGPqyWpfQIPFE0JuPLutqevoYTbSiEU7T6ms8Qc0PTGWT0iDYoSVtXjMwLblnwRhlqwalo2h5+UVcUOqe8euGwgpFAxsovuGaJWYXTpl1au7kuOV2Hk4qKVgNSitmDwr0cTquw5opJjznrumZyAZoLlMspZuqYIr8Gg2/XLoBOZtOoi3vt+pq6VIt+kIaQZDDYpfth1KrIeezOOk7Z+nKWRRMqwqgmyTRilRE04ATbuWJFWaAMXsyGv7yvIPI3u2tHVfvXoJmpuZcoapnTh4vIpxkrV+vhm8Ai2PFapq/aRBiRecDrVjOx6tzV+B7aeLDdLdxyIPSiQY2bNlICeAOA8K/12E5pNQz8hEtMnNEO6r0mQ6ZTUoigrcCawIvZazQNb/q00drmAuD4rVe+rPLJtkiMOz9UweRR2aWiqHFYwEP59fdmxpA9V1ZR0fFLMaFAthxiIU4S8WSR8BjekE6slAef1CjbxHmHPvQGw6UI5zbLYNM74eokSJdkLCF289FNC+RmpiaSXzuYI2Qq2q1sdoVWIroZCAYkAaM3Nzok2ZuQbbXHi5OdTXi34DioT/1HNX9wz8zeuMdKN4QjQo+nY0RcBonJqEnq2zsfbXspBjPlq5V/Wb7TSzTCy4ZRYr0SlWZWWlbaizYQb3m8nQHpYGhXOyaMFHgB9F1atNDi7t0RKjB4Sv/hZh1JHX2PRBkST9/C1O+KCYOcxoID5RXWf2sZNDwwm8OoO9ktiPVx+5jVJwbhhrxej6oEih5dHma+H9bcSW+uU/IlXVKo2/yXO0bZSdnMVag5Ig8+/IwTpgOS2giK7HmngOGggosTDxRCL6UKRKZfeLLTzqPSoTD7MvxevB74d0xOy7zwtsSxOYDl5buEP1O8kr4co+rTCoc3NHfVAOWUhWZtvEI7BLm1vPxxqqDp2nCfNI+Mdv+3DPVZJZsfRunY07Bp4W0cHT2EnWj1ob6+1Yf198TVe48OqufbNGgVWCg2YUx25pCQ+nfb4/dgAevqRLQDsSibLpObfykhyKTDx2tOyRmliKtDw82tc7y2tTKNRpUNwRxkMCigEqDYoTYcZsFI/gemOYpbWNVjR2aOmFmOMx6JyTvR7hQBIS2SToMLIzknHfRZ3QtmkwWZjZ9Wg8koSXr+uN6bee5ejKuq2bmPdnsWrO43Wy7GBlxmwRViZZQT2JonW+3344ZJtuMi2HMHpEv2wvJ0g4QobZU80cxhuIkzxSIDx31e46X7hYaVC0qxkDwHkdm2HcwA5cZ1Wn0E1qxtGgqBO18b+pCYNPN3XvSNW0majTD8edjZvObhtYK+vibvkoOq0pLumRD0Cb6j62kIBigNMmHjNv/Kz2uXj2qroMhYY+KLEw8URYuuY9U5JXbzVj9XaRlop3NpsgyWqZnODJy7vjN/1a44t7zjM81u5KpNo8Ewp2tAKG92T+1g7Qb485E1aJZP4TBaN3K8OeD4rRgP/X63qrfrNHa8vEW9fITjly65doGNwlLyRqKnYCSvBvoRk3AiOVngCp7JEEgohIg3LfRZ2w9KELkeSRVCnktUtjRKo/MZOO/+zTmuKpK7qjcf1EISXJg3+POxuTh9ctCHm8qjagVYuFCwELCSgG2AnbMo3O5XoX5gCoC8M8FcEcEG7ByMST5BH7oIRoUAROsrzzHxjW2ZQWI1J9d0FOOp7/TS+cUWAcNWG1/Sll5q0OCwA1DkXxXNOvNXe7duKu+BNoHZD1uGPgaaaPtYuhgCLzl0EwwmjAP7NdE+E+tkh/GtkVLQVJ7MwMIKwPymcTzsVTl5+BiRd1ColGi8m6XjCXDDMiA6WeAkUKPUQ0+GsFl5bZ6Vj/xDC8fmO/wHZtO46UYjCcoA6edpU0KC7HjtORLsyYoHe9AqbzWPaLOOdFqSaRWzwh8hXhaV6TPGITT2geFOa6kn7nl5mWjAX3D8LlvQswfnAHYVljNZNg7cO2nWQ9/M5Uq0HhPaOZxxYdIhrweloIYY1GSLehicdmFI/RdfU0f1qHzH5t7SdNY81krZtk4KaidkhL9uL0vMaa42Jv4hE1pkgIT3rXDJpHg9tEk1We4JKW7FVpqLq1zEIWE/0Xqf6kW0EWOuY1xvkdrTsPm0kLEG1IQDHA6zH+eKxgVmWdxSzDffREtfC4ScM6h10mqzildddmkFTgalC8EkQvQC+Kx4xTckqSB3+7vg8mDeuiU1bhrojSiOnkLDtd1v/LCnxsXWnHXN7sy4ztX1THogGvICcdC+6/wJL/TSQxGpdl8FcWN8JoNqs7QGq6nUdHdVOtkeJEOXKjZHYwQuTnwdKtpTlTrBX0Qt4VROsjmTFLsSn405K96JIffIZI1XWy14Ov7x2I9247y/K5sRJQ9SABxYAWWUHVqhOvjx3cjRrpZb0KAABvf78Ts9fu5x7TycGIErPorexqBVZYSxLMToL7xRoUSOpF7kR5UMy8v//8rijEq11Upkhy7ul10Qs3Mw7TVovA06DoOfja7aBEdaN3r9OaNw7YwEW88JtetspjFaPZrF+2F2ZsVJ/a3awwqBWys9OT8cDF+pMRNjpN5SMhcAbVRrC5QYMiEohvO68dJl7UCZ+OP9ex+3o9El65oQ93n1IkkWOsmf6ArV+vR50/KZJV7dFZFkQPbgZvyoPiXt677SxVo3JCLccOyqkGa0goM5yNB8oxYcZPIfuHndEiJp1KJFZ2FS3KpVDnJMsnVIPCXpd/DxFntc/FZxPOxfC/fqfaHu0kVq/f2A+rdh9T5XlwIpOs3nNwNShmTDxCU53+yVWcvCcsIt8WpzGqV78MW6nujdqb3n6ekG00MQhZKbq+rzHKJKsQKwHFjJYzNckbiDpxksaCpIvBcvDNo2a+C9axWZIkjYDiPm0Fr53EupikQdFhYKfmQodLu7BdjNEiU0ZrM8Raug0XkamIVy3JXh0nWWjVxFb1JmoyktWd1is39NFdJyYSZKYlY1DnPFUbsSokKUfzlq/n4cRaPCxGJg5eYrZYYDguy/ZS3RubeNS/1eYxdnv9Dk4RRBF1ZvN0vMaseBur3Bd2srI6hVApa8EHRYTHI6FFVp1jeJf8zECmbL37xhI3ZiUnDYoFrKvYQwdh9neKgYByel5jtG2agd1HTnL3O2VqsUqk78v7+L0ej+kwY1F/bPb9scLIVX1bYVS9qS3WWM6DElBTmxsAeAKzGa2TyJfIaNVn3TwUUcScBsV6mze6rhknzbrj6v61UoK6a9drUHTq+cKuwcy+lRaiq5xEPZ2IbpsQrpAuqf8FxBmZ9Vj84GDU+GRkpCQ5ro13GtKgxCEi9TUA3HJOO91zeTMXdpZiZi2IbJ206rFK9hfp+/J9UPRS3ev4oJhQH2vJyQjWuVtm+YD1Tk2pR3bmp6eFsatBER2TY7AkQJrOKrQdmjcS7nMarbOoFr8so8aGicfYB0W8X3Vq/XG8707UJth762lq2ZWAK2tjk85A9L1G5d4G+9V+J/ztetdITfIGfK1YDYoL/VHJSTYeUWV+1by/xy87A4+N6iY8l9cBsX1Mkok11cfp5IFwRzJi5+F9KMlej7gjCPFB4XceZmdnbIfuJgHFcphx4DxzJh6uKcCiDwpLjkGUhJ6Pydtj+hvf2CGaNtYvpwzAZ8PEY9ThSzqfP88HhRcBKDLLsHc2O/BU1sRKQGH/jrYGRbRdCtmv9kGxXk7W38XJbNROwQ8zjm05SUAJE73Xx3vhosgVEZf2LMDL1/GjGWKmQYnw9XnfRJJX7JnukcShinZnZ1f1bYVGKV48OFwcehxtUnU0DgqDOzcP/qh/4CRBx/rxnUXo3SYn8Ju3SrOZKhNpAvS0fwBw67nt8MZN/VR+EECdz0+7ZtHToBjVq90oHqPPW6vNEiX/0nFBEcKWlxeVxiNWJh6n/fysYDRpETnv25Ev1CkDrJ8faWzOTyIKCSgGGEn3ehImT0BhhQqzM5szBUmaYragU4Rvy6sXPWEu1AdFpEExzwvX9MKKPw4NSWYVSwpzMwyPuaRHy8DfSpWpTDzM3/3b5WLW+HPxxGVnoHebHIznrCNiygdFcHxKkgd3DRInv0vyejDsjHw0rc8wG0sWTRok3ikDtVE28fA0f7zvXfQpsj4zRr5usYZjzYrevUUaFM2/gPUwYy0ZKe72QbGbqDGSuLvlugyr74rrg8L8bWT7VmiTm4HFkwajqyZZ0SB2thxFrK6PYjWrIc9PwiPpp7pX+6Dw/7bSqXg8knBRu1ihRATowUsbrsoky6mDMee0w6zx53JNMqZ8UHTqdTKjgRK1mh6tslXvyU5a+XBhF5DUYl+DYjQ71/xmz+VpUEwUIb0+98Z5zDfndgElthoUwfb6HSLzqC0NSqr9pIuxItaRou5uuS6D16b02hlfgxLsZZ65sofpexc2zcBXvz8/8DsjxYvfDtAPQ3YLHZo3Rt/6tYXMwBvwvB7ziwUKEz/FR58gxEw+C17EDiuUpBnk3tFiph+VTFaxaF96ihcbnxge+G0na2sk8cuR8UGxkkkW4EfPaYWW7yYPxow7BmBw52B0jhv9HVhi6YMiapTKZpVjbJg+KKwGxeWvxDWQgMLAU6EaRYGE44PSxoTKXkuv+nVMXh3dN2Ze11a76iSPhHdvO8u0JoX3XF6dKB4tonE83vsEr4moLw9nlsdu02YPNcJUqnuDY4afkY9erbNVicS0sKHd1THQoOjx9vc7UV5pfc0ry5lkmd9ejqDZu00Tw3s2a5yKczo0sxUWHStE/mOxJOgkGywQG3VpRwPCalBirZkwS6wVPe7SYccYIxUqt1HpvEGe8124biPv3z4AOw+fQA+dzj7SWPV98XokZKYl44JOzfHdtsOGx3OdtSSxgKEdCMRr8cRHpyDCTKI27SJzgLo+rSacs6xB4Rz/+k39IMuy6frXLmLoBv6z8lfL5xg9r36YcagWMLdRCk5r3gi/HDpheG8rAkrTRik4cqI6ZqagcBMrhoNw9WTlX2Y3Wz/2nGRZHxTr58eCWBeTNCgMvE+alzBJvV8MT51u1X9DS2ZaMnq2zonpYGtVc2P1eJ5KWtcHRftbcGCsP7ZwMVOPvDGGNZmkW9SgmCFcPxUtdrK2uoEOzRvhRWb9IKMovRAfFJGgx/yda2KBOwCWfGamXNUDLbJS8ahOyoRIYidXUSTuzdvO9v9Gmb+NyIhyNmpHIA2KezAy8fBas94HFQkNihswu7aHgjKwmh2kxE6yZn1Qgn/Hy0zFDKbSa3O0R6zJxLKJx0wUj8NuPs0yzQ3CbiM1yasyL2rb8QMXd8JpzRvj/z5YDUC/bo3WpjLCytpBF5+Rj4vPyLd8D6dwo5OsAtuXsAKKX+WUb67UrNN9VYyS4lkl1qYoElAYjGQH3qvSe4GpnPwDCSCfWE5RrggoKSbP43XIHh0Tj7aDEDnJxruwYk6DEjqwscnmrGqzzBztVETCmzefieW/HMFlvVo5cr1oI0OjcdV8/m2bNsIlPVpixR+HINUbKiiqF1pkt6vvob6nYC0etzhzmMBgDhjZewtvqEyqgluSk4I/7GjC2fHgVLX7zJhuhAQUBn4qaf7fZuDNVmOWu8RBzCSYY1FmkmYTRvEUNJKOE4rp1Yxjra8MEzPVzpuNhpMh1FSbd8jP56JuLXBRtxa2z3cbWmFQqZq8zDTDc3lhxgDQpkk6Vu0+Znj+jWe3xWdr9mNE95aGx8aacLVF4d1bfztbHtYHxW/DCZl9zlito2aVWE/qSEBhMGo0XA2Kzgvk+aAkgHwCr1UTj9eagMI38YgFDG2nFu5aPG7FzKyYN7CdqI6sOjneBT+nqHMEDv4OaZeGWUvZY/nbH7m0G6pq/fhqfbHutbLSkjHn3oFGRXYFMfVBMdjOloc1bdsNkrpnSEds3F+OczpYyw0VK2L9ZZOTLANXg6IyEXB8UHSul8rRoITrJOsGzCxyyKIIHGadzHgDsdcjCTUIWnkpXpIgWcXMc6mieOpb54mqWtv3PFheZaJcwb8TtOptIdKgmEHivEcAaNo4FX+7vk/gdwJ0J6p2He3nMXSSZQ5gTds+mwWdeFEnvDXmTFcuzMcj1pGPJKAIeO6angCMHQB1NSg8J9kwy+UG7EbxmA1j5F1eP5Os1geF2WcgYMYTZsKM2WdXNIIVlfYFlMMVxgJKnFdrWOh9CiFr7Rhci92v940lWn3H9nH4d1f6DZEmizXVJ9jrUBHrZyMBhYEVikf2CLXd8hO1iV+h1qTxp5FdE2LGYzXcLiCgmDTxiNaEMMpZoCDMg2Lq7u7FzMCUnRFcoE9pa/de1BEA8NsBhZEoFpl4GFT+FGFoUPS0UolW27HUeFrxQWHbOZtnJgG6dNdCPigMrA9KMA4+CD9Rm/h6WlPI7eefhs9/3h9GCd1BM4Pl6bVY16DwfFDEGpRQHxTmb8H2eERvVt08MxUTBp+uWlBQ6UPP6dAMax69yHB1YbO0a5qBXUdOBn57EkgItIrWF0GlBQlpcAa1IxgMQw9LsFp2ow+KpP4XULfzeMrUGw6xbmqkQREQUPGpJRTOcWJ4A20iNOsJF3bEwE7N8Zerza0lpAysPVqby34rNPGYPF6cSdbU7V2LSEAZ0T0f8++/AGPOaSc8JicjxbGBLS3Zi3M6NA1uiPeKDQO9ZGvh+aCwf4tNRYnQn4hMsm5A1JeoFieNYnmiTazfBwkoDMap7sMnEZxks9OT8d5tZ+G6/oUYN/A0w+OVmWRmWjJeuraXwdHiPCiiHl5vsUD2rcX6YwsXXr10a5mF127sh6y05JBjIhXKKEmS2FzXwIQVPb8RrQaVfFD4iKLuon1v1XbO21KZeBKgHzcFaVDcA9vkgu1W/+PRzwYZus1Cgse4YER34wyUbGerDKR6iOpZrI7VCij8a8V7x56ZFmqR1UYwiWZ5TiJB3W/FSUCCIf3bNQEA/PGSrphxxwDcN7ST4TmqKA/NitvpKUnCY43QX+k4QSq8HvX3Gt1nE96N54PCHNyscWrEyuQmYt3UyAeFwSiJGl+q1rseZ5vFMrkdq9lNzTR4Uecs9kHRHieaFcU3LbLS8Piobnj8842Bbfrao8gQ6rTJaqnil2m3noW1v5ZiQPum8HokbD5w3NL52hW3tWuvGGpQRIK1zjmJMJE3Wu8sovcW3E/ZrBWeXr+xL37+tQxDu+ZFvGwEaVBU8DQoRjNwvfGAJ/AkQiZZFlO5OZwSUEwmahM6bcZ6OuAAt5zbXqVJ0UvzHykkKbZq+UjRODUJ53RoFmivZgZL1mSrXaMqPdlrW4OXiPUrIpaRdsLIwPpCacs2vHtLTB7eJeG0WCJi/ZQkoDCoHZ/qGyiz36qA0hAcvS0LKCaavGhgEGpQPAArXqqzqSbG7J6FrXO9NP+REoYlzVtM1ERtZgYhtoq9HnW9pKd4LfUfwjpNmJbLRx0pE2UTj6EGJXbaHTcQa0HMsoCyePFijBo1CgUFBZAkCbNmzQo5ZtOmTbjsssuQnZ2NRo0aoX///tizZ09gf2VlJcaPH4+mTZuicePGuPrqq3Hw4MGwHsQRVCtUhu7mfTxs56F1HOQ5xCaCkyyLKROPwRTptGaNVL+tm2jMaVASpYPx6HTosehQYt2JRQoz7eWtm88M/J3kVZt40pK9woywwW18zCTlSxQ8sVShCAgUKYb+MW4g1k9sWUA5ceIEevXqhalTp3L379ixA+eddx66dOmChQsXYu3atXjkkUeQlhZcIOu+++7D559/jo8//hiLFi3C/v37cdVVV9l/CodQ5UFR/jVolOzuf99xtmofT4OSaFoVM524SIj5z++KcFWfVph2a39T19T3QRFoTRKwg2E7dL2BLGJOspLY9JlI8reZ9jKUWdxQ287Tkj3qtszVoIjabWK0VTOoJxHu0KAoiJxkGwqxfmbLTrIjRozAiBEjhPv/+Mc/4pJLLsFzzz0X2NahQ4fA32VlZXj77bcxY8YMXHjhhQCAadOmoWvXrli2bBnOPvvskGtWVVWhqiqYcru8vNxqsU2hMvEoNkiEbhNRmJuB289rj7e+36lckXMPcQ9udZVgN2BmATu1iSdI5xaZeOm63qHXFDrJmvVB4c9a4692+cTaP0H7ZSSqCcJq3dZ9v5Lqd13d1H3zvMuJbmHedyX+JULeCtzRwig7tan+PzGbP4DYf9uO+qD4/X588cUX6NSpE4YNG4a8vDwMGDBAZQZatWoVampqMHTo0MC2Ll26oLCwEEuXLuVed8qUKcjOzg7816ZNGyeLHUDlJMvZb+ZV1TIqEl5IsV53Ei8LSLGYUUV7BT4hogq1Oouqu7ys+a3cz9Kl4gI9Ew9LlkOZY0MIMSsF/47/4TKI1XZYkJOu8SmRDE0EYh+UxBOsRcQyFYBQ5qjfwb6H5Djsn+MdRwWUkpISVFRU4Nlnn8Xw4cPxzTff4Morr8RVV12FRYsWAQCKi4uRkpKCnJwc1bktWrRAcTF/CfGHHnoIZWVlgf/27t3rZLEDqBaAktT/av8OblPPZtlrcP1NdHrweBRQrDrJsog7B6vbxRoUM+fHGyrHPZ0v2KnU9lokxDbyIlqY/RzfHnMmRvZoifsv6hziFGu0DIBohsquCqEfKWiujG7GyE8nsvcWbOfsN6MtTjRi3Wc6mgfFX68yuPzyy3HfffcBAHr37o0lS5bg9ddfxwUXXGDruqmpqUhNjXxiHHWYMWe2wzlHu43NMMjrO/ScZONSQDEh4opMPKKnFXUEZsOMxZ1O/NUvD7MalLzMyHwzkoSQgThAIoyY9ZhtL0O6tsCQri1Cttctz2DeHJeI/lJWMdOfRIXABFVtskt0nrumJx7879pYFyOAo82hWbNmSEpKQrdu3VTbu3btGojiyc/PR3V1NUpLS1XHHDx4EPn5xllJIwmvb1V3MPoqWgDwMWYdfhSP+P7x+AGYEaqMcg1oCddJVujYFn/Vy8XImfK+oZ1wZZ9WKGLXy3Hy/iG/E6RiNdiREbQaVStCiWq7zq/EJsoaFKEPilT/b5B4nEBapVVOuup3rOVkRwWUlJQU9O/fH1u2bFFt37p1K9q2bQsA6NevH5KTkzF//vzA/i1btmDPnj0oKipysjiWUaJ4RGYdIxWtBODSni0B1DnM8i08ehoUt0wfzGPGxMMznQE6GhSLYcZ1GhfWB4U/gCdK98I2E16f+fuhHfHydb0jNguXJEn4jSSO/sReRInWj0QtHxv5oJgQshMc12SSrd/OvgdtIr5ExG2TD8smnoqKCmzfvj3we+fOnVizZg1yc3NRWFiISZMm4brrrsPAgQMxePBgzJkzB59//jkWLlwIAMjOzsbYsWMxceJE5ObmIisrC3fffTeKioq4ETxRpb53Fb0Svg+K+ve5pzfDnHvPR5smGXh45rqQ43mOs2e2bYKVu4/huv6trZXXBZjpxFmtkRmVt+XtIWXi70uUjt5smHGkkGCsWUwEwn2sOh8UC4IGs78hzNZ5RN1J1mi/6p2IrpE47+qs9rmxLoIKywLKypUrMXjw4MDviRMnAgDGjBmD6dOn48orr8Trr7+OKVOm4J577kHnzp3xv//9D+edd17gnJdffhkejwdXX301qqqqMGzYMLz66qsOPE54KOOouMM11xC75GdZuu+0W/tj5a5jOK9jM0vnuQEzHalfoEERYTXVfchy9IJBIVE6Eq8UW+FAe8vEqNVQbGlQtH4kFjSwK3Ye5V9H536JpLEC3JMHRdnsUQkofAklUquGx4Ikrwf3DOmIv8/fBiD2kzrLAsqgQYMMU2jfdtttuO2224T709LSMHXqVGGyt1ghczQoVkLgzEST8OouMy0Zg7vE5+JTVtcrYTHr9Bo43rQPCv8esf7YnEIVWRCDZ5IgxbwM0cCeD0rwb4+kES5MaGCDhya+hopHbPSBnK2S8i9r4mk470Eh1k+c+EY1C/B8UFj4MyAxvOskXCZZEx+teo0j5m9dgcNCGSQ9HxTj+8Ub6vVBYiKhCCNOEiiIJ2zBQIKkXheK54MiONcoPFkh0RYfjbYwZiQgqk081jS78Yq6j47ts5GAwhDUoPBnL4YaFM1vnn9AIqkDAXM+EFbXHxKuxWMy6seqiSjeMJsHJVJoa1HlJJtAA6adCbPa0dVYIBe1afJBidL9mL/7tW0SUg72fTYUDYqbkgSSgMIQ6FpNqF0D23TeIG+gTDRPcDMz+D6FwQ9fZZO3qEER3kknD4oZjU28Eet8GXWuFe7pxCKFLe2U5t0YRZGJ7mD2vcZ6hus00U/UJjANS6HbGkqiNjc1qcQaLcNEmf2pBjX2b+6LE79Nnizy6ui+yM9Kw9+u722jhO5DT97q2Tobqx+5CLmNUrj7nfJBCS2TSf14nBJzEw8g/DASR38SftOpi+Jhf/NUKOJzeX9rSSSNFVC3wGI0Uff1oT2/Osw4ATsTDm6a1DmaSTbeCZh4BJ2D0WAQEt3AOb5Xmxwse3iI3SK6Dj0TT1qSN0Q4MeO0ajUPina72Ek2MToYVij0xsQFhdeVJx567eXaM1tjKCd7LHtGXTvWb+9iHxTzpuVE4MazC7Hu1zLceHbbqN5XEjTkoJNscFtDNLvFus8kAYWDUM1o8V01hPZstQGbCZ8U50Exdy+hk6yps90PG+4YCw2K9pZsGRJpQq/3/T53TS/udq1Jx277U4WS65yZKNX95yt6xLoIfBOcSoPC1+4kmgDppuchEw8HUe4Mo/em7UhikUQr2lgVwswcLhp0zd7Lmoku/mBVzZGe4Tx3dc+QbZJkzXk8XrFTtyoNisd4ZW2xQ7jlWxM2EGl0Jc2/QMPRoMRaa8JCAgoDdy0eAxuy3rt004uOFLrPaNAhW12LR7iIoHaz4J0lyttgBd9I95kXdeOZMSSNKSP4d6LM6AEnfFCMjWGmughdHxTLxSIYhJPR+j/Vidr4LyIzLbEMEW4SxEhAYQjkQRHs56oAda7nphftRszY31nMaqTUJgc2i21ivA+2XTlt4hnVqwAA0Lcwp+5eHCeXEF+rhBH91NgK4tHMwo2cXa1+A0Tk4AkrbJ8hSnX/+yEdMaB9LlfbGI+4yRk4sUS/MAk6yfJn3YZ9Roht3pFiJRRmohOEzrMmEyWxv2QADw7vjLe+24k/jexqvqAuJokRGpyOWp9yVQ+cf3qzgOZE1FmJnAsTCXtRxmrh0aiazJh49IpBckx4iPojngZF9K5yMlLw0e9iu9Ctk5CA4lICa/EI9lvpYACaBRk1dKsJ2UQaFL3oKVkG/m/Q6bjrgg4Jo0ERrdbsBI1Tk3Bt/zbce7H3VJt4EqNencajzYPCq0vBuWZz3ZCJJzzUeVA4E1M3hPRHmSSRqigGkIDCIHMX42H+tBhm3LWltUUDE4HXb+yLQ8er8OrCHXjy8u4h+8P5xJNMxtSqNSjK8gWJ07mwgl+kHbF5QqaOy09C5eWwY7rSzsKNNCFCLWKiqqVchlhArNuT4CmVuKS4SEBxT0lcAE+DolXZWuGyent+Q2Fkz5YY3r0lbipqh6UPDcHpeY1tX2v6rf1Dtpmtf0ktoSQcah+U6N1LoaFE8dhBaxI2NmnyK6+hrsUTbYzabjj9f7xidiIYDUhAYeD5oLCYmU2yNJTUyFYw+40P6pwXcqxZp2O2U0nE7tsbxTBjkVmiQbTsMB9SgqQxG5i/oBlfLSJ8jAQQozDxRMRNwR0koKgIXc2Y/dtI4HDPa3UzFjppzW+zGWYlplUn4gQzklE8ZtAKLYnacdt6LLa/kIyd7MV1l6CV6jKMnGQboqCY7CITD/mgMBi4oHDDzBpKo3UKK/UlSZJKwjAVUQIgMzUJF3RqjhqfHy2yUu0U09UkRdHEw0MK/C+URBQIraCakXvUTrJch2PRdVQmHupkIoWor+eFGTcYE4+LNCgkoDAEfFBs5uFIJEfMSGGlhrTHmjbxSBLeve0sC3eKL1hNXkZq9D9hSWoYg2a437MErQaWdw/+uQ1tLZ6YodKQhNa5kQYsEXGTBsU9JXEBXA0KK0ELHAYJ87Rt2sj0sdq6FWeSbVgvgZ3hFOZmRPx+53Roqrtf7fOTOCoUO61KGx7MXoOvQTE2W+o6yVoqHaEHr85dsXJ4lHGTkyxpUBhkng8Ks7+hNNBIktsoBfPvvwAZKV7DY+s672AXrKfBakimBXaxwKaNU3SOdIYPbh+ABZtLMPbdlfVbJBLMBYRG8eib46wmKyScRbgWD88HJUplijVd8t2THoMEFIbgICcw8ZCTrCN0aG4v/NjprKnxCquBTY2COlaSJJXaV5LEvi+JJCjayiSrmXEbZSI1c4vGemu9JFB9xwL1K+FF8bACTMPo4ZtnpmLhA4PQKAbmYy2xL4GLCIYZB7epbMgWVLQNEcdrQnNB0XLnDQ22HpKTolMn2plkQ/CRCPfb9mh8dURZeXnIMvDk5Wdg37FT6NEqO6xyEGJEPibKe2mIUTwA0K6ZeVN8JCEBhcFosUDuZLUBNVojnJ7MhTrJ6hzbgN4Dq8mLlkObViChHD98tNE36gmO+evIAG4uaudUsQgBwuU2ONvIxB99aErKwNWgWMgkSO3XWUKcZEWdiZRYpgUj2IEuOUoObWzVez2S2MQTldJEB1smHp3zee232ufnXocyxEYH4Svm7CCZPPqQgMJBpdo1NPEQCk7XhVbF7qYMh7GEbYfRWjdDa4tvCLPJcJ/Qo6knXpVV1vi455J4Eh2srIVE5vzoQwIKA0+DwmLsJEsN2EnMprpvaPXOqqWjtfKoNtxSJKA09Im/1mfByIdNJKCYpYFXd9gIw7x5EVc0WkYdqnIGng+KkQ25oXh2x4JQHxRxZ9KQXgMrk8TCxOORtANxgla+rcdSC3JGTpY1Pr6IYVbQI1NQmAjCiHmvPkFbuashAYWBt1gg2yjJMTC6aAc+vRTMDamfjo2JR31/UU6aRErUFi514djmfdjUUD1GAyuvpCGYNd0GCSgMRl2Ccap758pChJLiNU7u1hBghbFoRfFohXYS1vmEaJoE+xRaZqcBAJppEu6ZFbgTVnsVJUS1xzXxUFVHHRJQGBR1qUh9zTMxUJuNHqnJ1FwBwMeMXtHKg6J1khVl2EwkTZYd3ya1QKK2hfFm4O/ddhZG9SrAh+POVl+HRsOoI4reVCANSvShPCgczCzgRYTidKeqvVqqYDCW0LBmN36/8QrPTuPRaAYawrcQbiZZ7em8OuvYIhOv3NAnZHuH5u5IlJXosO8rNcnLbOcdG40SESw0JWXgTf5UPijUaHVx2mHvNE0nnZbMN/FIElDrT6CpuwHsk0ZLUGBnlCdrfJQTwgQeTYIeK3VGGpTowNYyuz4Y30mW3km0IQGFIbiaMT93AX8tDWq0keIfv+2LkT1aYtb4cwHoO4SerA4vXDOeYAXBaOWGYZv+0h1HVP5YiTqW2nks9t00Sk1SCZMkdLgP9pWoJkCcd0VCefQhE4+KUB8UFqMG2tD7H6c74Da5GZg6um/gt8gxU4KE6lp+Rs5EJ1qdpp8ZeLPSkhrEYCt6xt8P6Sg8hxWUMzWL/NEA5z7YCSYroHA1KA2gzbsNElAYghqUIOqsstRACXcRrU6zoqo28HfjtKQG4YOiZfgZ+XhgWGdd/5DyUzWBv9OSvSqn4YZYZ26HfSUqEw/nVZGAGX1IQGFQ+hJJoL421KCQuScmNLR+PxaRMiergpoBr6Rei4dt94mUOCxkLR0PcHpeY91ztJl92bwwJKC4m6w0/eGQNCjRhwQUBp4GhYW7PgO1WVcwons+vlpfjGvPbB3rokScWIgA53VspvrdEPKgNMlQ5yYxMwG5sEseru7bGn3b5gBQC5PUV7iPtGQvHr20G3x+Gc0yUwPblXedQPJ2XEICCoNsIKFwQ88iVxzCAi9e2wtX920dMpAmIrHoNFn7vAyxNiCROvTT8xrjkUu74anZG02f4/VIePHaXtx9pEFxJ7ed1x4A8MXaA4Ft9KrcAUXxMARMPIL9Rm2WGnXsyEhJwtBuLYShyIlErNPJy7La3JnI7X5s/eAFwNZsRO2DEn55iOigvKpEbtvxAAkoDNy1eIw6YmrARANDhizWoES5LNHETlK8WOSsIexh2NcTUYcEFAbuasZsThSSRlxJQ3Nec4MZpYFVOYDwF2ZsiHUWrzS0PsWtkIDCEtCgCPYbRvEQROJTZ+Lhp3R3g/AUKeysBcVGNdGgF38kcnuOB0hAYQj6oAhMPJxzSKsSJFY10bN1dozu3DCR5ehlsHUTtJp2YtPwWrT7IQGFQeZoUNRr8eg3YZohxYb+7XJjXYSoEutcI3VRPDEtQkyg1bQbDtSVuwP64hiMoiNohcvY0xAHRjciciSPdYRRJBGtpq0HmQjiE9KMuwMSUBj4UTz6i6JRM44uDdG0oCXWY54si6N4EhmjLLI8EllgSzQoisd9UKI2BuM8KAYmHkdLQ/CoGxgbdqfvhlm5Wk5kU91HvSgR5993nI01e0sxskfLWBeFiBLUl7sDElAYstOT0b9dE7RrGlwMTBVybKPVpid7carGZ3wgYQrSoMR+Vi7LDSPVvUJRh6Yo6tDU1rmJKLAlLvraciL6kIDC0LtNDj6+8xzVNrXaz8hJNnTb+7cPwKSPf8ajo7o5UcQGj5d6jpgPeg01UZsdqD7iE/JBcQckoFiAG2ZsMGD2a9sECx4YFJHyNERIPok9shy+ZpEgCMIIcpI1wI7WhIgc2uXs7aQfJ8JDhk67j7V6hyBswnOSvaBTcwBAj1aUaykWkAbFApQHRZ9oPL72HTQkXwgFN4gADbypmybWOWuI8GjSKAWbnhyOFBsh5kT4kIBiAQoz1icafbF2OZSG6JMS6zFPO+iqUt1Htyiuh+ojPmEnm+kplEE4VpBYaIEGOFl3HVrntYYY1XNxtxYAgNxGKTG5vwxyIiQSD0nwNxE7SINiidBm2wAn8ELOPd1eKGY4NEQBZVDn5vjfXeegQ/NGxgdHApnavWlIhRKXUPt2BySgEGHzwx8uxJo9pRjRPT/i99J2HA1RQJEkCf3aNonZ/Tu2UGdUbei+V7GEaj4yUL26A8smnsWLF2PUqFEoKCiAJEmYNWuW8Ng777wTkiThr3/9q2r70aNHMXr0aGRlZSEnJwdjx45FRUWF1aJEnQY4FpqiVU46RvZsGRWHVe0d/jCiS8TvSdTx+YTzcMNZhXj6yh7CY2LtH0MQdiFB231YFlBOnDiBXr16YerUqbrHzZw5E8uWLUNBQUHIvtGjR2PDhg2YO3cuZs+ejcWLF2PcuHFWixJ1+A2YGnWsWPbQEFx7ZptYF6PB0KN1NqZc1QPNGqdSZ24Wqqa4hNq3O7Bs4hkxYgRGjBihe8y+fftw99134+uvv8bIkSNV+zZt2oQ5c+bgxx9/xJlnngkAeOWVV3DJJZfghRde4Ao0boGarLvIz06LdREIaKN4SIVily75mdhcfByNU8nyHgso+aD7cDyKx+/346abbsKkSZNwxhlnhOxfunQpcnJyAsIJAAwdOhQejwfLly/nXrOqqgrl5eWq/2IBN8yYGjLRAKFmbw4r9fTmzWfiujPbYOb/nWN8MBFRqH27A8cFlL/85S9ISkrCPffcw91fXFyMvLw81bakpCTk5uaiuLiYe86UKVOQnZ0d+K9Nm9io9SkPSuwh1as7EL0G8kGxT5vcDPzlmp7o2CIz1kUhqJ9xBY4KKKtWrcLf/vY3TJ8+3dGB5KGHHkJZWVngv7179zp2bSvQ4EgQodBnIYb6jPhBleo+dsUgGBwVUL777juUlJSgsLAQSUlJSEpKwu7du3H//fejXbt2AID8/HyUlJSozqutrcXRo0eRn88PU01NTUVWVpbqv1hAjZYg6hAlaiMFSnSh+o4MJFe6A0e9sW666SYMHTpUtW3YsGG46aabcOuttwIAioqKUFpailWrVqFfv34AgAULFsDv92PAgAFOFsdxeLMhmiFFF6pud8BbWI0IhaomPqFMye7AsoBSUVGB7du3B37v3LkTa9asQW5uLgoLC9G0qTqbaHJyMvLz89G5c2cAQNeuXTF8+HDccccdeP3111FTU4MJEybg+uuvd3UED0CdDUGIuLmoLWb9tA+3ntMu1kUhCFuQoO0+LAsoK1euxODBgwO/J06cCAAYM2YMpk+fbuoaH3zwASZMmIAhQ4bA4/Hg6quvxt///nerRYk6vAacnZ4c/YIQRIzRfgpPXt4dj406o0Fm9tWDBr34hN6bO7AsoAwaNMjSEuK7du0K2Zabm4sZM2ZYvXXM4an92jdrhD9e0hVNYrRwW0ODOg53oHYorPtBwgkRz7D9O7Vkd0AZgSwgGhzvGHhadAvSgCHbMBFPUHuNT2gi5A4cz4OSyDTPTI11EQjCJVAPTiQuJFi6A9KgmODNm89EcXklOlECJYIAoJlhUl8uhGbicQS1addBAooJLurWItZFIOqhDp8giEhD3Yw7IBMPQRCWoQ6cIIhIQwIKQRCWYRMUkrAihhI5xg/q1YzpvbkBElCIuIK6DYIgIg31M+6ABBQirqCZjTugt2AOqqf4QaUVpBfnCkhAIQjCMuq1eKg3JxILatLugAQUgiCICEEDXXxCeVDcAQkoRFxB3YY7oIHXHFRP8YPaSTZmxSAYSEAh4gvqOFwBrVtiDpqJE4R9SEAhCIIgCAbyq3IHJKAQBGEdlZNs7Irhdqhu4gf2XXnpxbkCElCIuIK6DXdA78EcfxjeBQBw27ntY1wSwgoeauCugNbiIQiCiBDnnN4M658Yhsap1NXGEx6SUFwBaVAIgrCMOtU9deZ6RFI4oZp3DrYdk4nHHZCAQsQV5LzmDugtEImMh0ZGV0CvgYgraGAkCCISsHMfD02EXAEJKARBWEaiKB4igfGSD4orIAGFIAjLkN8JkciQBsUdkIBCxBXUbxAEEQnYroUEFHdAAgoRV9DM3R2oTDyxKwZBRAQy8bgDElAIgrAMdd/u4LTmjWJdhITESyOjK6DXQBAEEWd8PuE8XNarAP/4bd9YFyVxUDl+kwjuBii9IRFXUL/hEiTB30RU6NE6G3+/oU+si5GwUKI2d0AaFIIgLEO+QESiocokSz4oroAEFIIgCIJgIAWKOyABhSAIy6ijeKg3JxIL0qC4AxJQiLiCnNfcAb0FItFguxbyQXEHJKAQBBEW1JcTiQZNhNwBCSgEQViGOnAi0WDNOmTicQckoBBxBXUb7oDkEyLRyEjxBv4mE487IAGFiCuo33Af9EqIRKBxajAtmIdGRldAr4EgCMuQUEIkGo1SKW+p2yABhSAIy5Ami0g0WA1KVa0/hiUhFEhAIeKK9s1ocTS3QQ6zRCKQmhQcDps1So1hSQgF0mkRccUTl52BtGQvru/fJtZFaeCQUEIkFpIk4dsHBuFUtQ/ZGcmxLg4BElCIOKNp41S88JtesS5Gg4eUJkQiQhpad0EmHoIgwoKEFYIgIgEJKARBWIZkEoIgIg0JKARBWIYcYwmCiDQkoBAEERYkqhAEEQlIQCEIwjIklBAEEWlIQCEIwjJk4SEIItKQgEIQRFiQsEIQRCQgAYUgCMtIZOQhCCLCkIBCEIRlWK0JRfQQBBEJSEAhCCIsPCSgEAQRAUhAIQgiLDwknxAEEQFIQCEIwjKs0oQ0KARBRAISUAiCCAuSTwiCiAQkoBAEYRk2ioc0KARBRAISUAiCsAyZeAiCiDQkoBAEERbkJEsQRCQgAYUgCMtQHhSCICKNZQFl8eLFGDVqFAoKCiBJEmbNmhXYV1NTg8mTJ6NHjx5o1KgRCgoKcPPNN2P//v2qaxw9ehSjR49GVlYWcnJyMHbsWFRUVIT9MARBRAe1D0oMC0IQRMJiWUA5ceIEevXqhalTp4bsO3nyJFavXo1HHnkEq1evxieffIItW7bgsssuUx03evRobNiwAXPnzsXs2bOxePFijBs3zv5TEAQRM8gHhSCISJBk9YQRI0ZgxIgR3H3Z2dmYO3euats//vEPnHXWWdizZw8KCwuxadMmzJkzBz/++CPOPPNMAMArr7yCSy65BC+88AIKCgpCrltVVYWqqqrA7/LycqvFJgjCQchJliCISBNxH5SysjJIkoScnBwAwNKlS5GTkxMQTgBg6NCh8Hg8WL58OfcaU6ZMQXZ2duC/Nm3aRLrYBEHowIokJJ8QBBEJIiqgVFZWYvLkybjhhhuQlZUFACguLkZeXp7quKSkJOTm5qK4uJh7nYceeghlZWWB//bu3RvJYhMEYQEPOaEQBBEBLJt4zFJTU4Nrr70WsizjtddeC+taqampSE1NdahkBEGEi9rEE7tyEASRuEREQFGEk927d2PBggUB7QkA5Ofno6SkRHV8bW0tjh49ivz8fEfL4fP5UFNT4+g1CXeSnJwMr9cb62I0IIJSiZdsPARBRADHBRRFONm2bRu+/fZbNG3aVLW/qKgIpaWlWLVqFfr16wcAWLBgAfx+PwYMGOBIGWRZRnFxMUpLSx25HhEf5OTkID8/n/JyRBmqb4IgIoFlAaWiogLbt28P/N65cyfWrFmD3NxctGzZEtdccw1Wr16N2bNnw+fzBfxKcnNzkZKSgq5du2L48OG444478Prrr6OmpgYTJkzA9ddfz43gsYMinOTl5SEjI4M60ARHlmWcPHkyoJlr2bJljEvUsCATD0EQkcCygLJy5UoMHjw48HvixIkAgDFjxuDxxx/HZ599BgDo3bu36rxvv/0WgwYNAgB88MEHmDBhAoYMGQKPx4Orr74af//7320+ghqfzxcQTrTaGyJxSU9PBwCUlJQgLy+PzD0RRw78RWHGBEFEAssCyqBBgyDLsnC/3j6F3NxczJgxw+qtTaH4nGRkZETk+oR7Ud55TU0NCSgRxs985iSgEAQRCRJ2LR4y6zQ86J1HD3YeIiVsL0IQRCyhroUgCMvIZOIhCCLCkIBCEIRl/P7g3+QkSxBEJCABxUUMGjQI9957b6yLoWL69OmBZQrCwY3PRtiHNCgEQUQaElAaGO3atcNf//pX08dfd9112Lp1a+QKRMQlKh8Ukk8IgogAEUt1TyQG6enpgRBeglCQKYqHIIgI0yA0KLIs42R1bUz+MxN2zeL3+/Hggw8iNzcX+fn5ePzxxwP7SktLcfvtt6N58+bIysrChRdeiJ9//jmwf8eOHbj88svRokULNG7cGP3798e8efMC+wcNGoTdu3fjvvvugyRJpqJetCaexx9/HL1798a//vUvtGvXDtnZ2bj++utx/PjxwDEnTpzAzTffjMaNG6Nly5Z48cUXQ65bVVWFBx54AK1atUKjRo0wYMAALFy4EEDdIpNnnHEGxo0bp3q2zMxMvPPOO2aqkYgwZOIhCCLSNAgNyqkaH7o9+nVM7r3xyWHISDFfze+++y4mTpyI5cuXY+nSpbjllltw7rnn4qKLLsJvfvMbpKen46uvvkJ2djbeeOMNDBkyBFu3bkVubi4qKipwySWX4Omnn0Zqairee+89jBo1Clu2bEFhYSE++eQT9OrVC+PGjcMdd9xh+5l27NiBWbNmYfbs2Th27BiuvfZaPPvss3j66acBAJMmTcKiRYvw6aefIi8vDw8//DBWr16tSt43YcIEbNy4ER9++CEKCgowc+ZMDB8+HOvWrUPHjh3xwQcfYMCAARg5ciQuvfRS3Hjjjbjoootw22232S434RxqDUrsykEQROLSIASUeKJnz5547LHHAAAdO3bEP/7xD8yfPx/p6elYsWIFSkpKAis7v/DCC5g1axb++9//Yty4cejVqxd69eoVuNZTTz2FmTNn4rPPPsOECROQm5sLr9eLzMzMsBZm9Pv9mD59OjIzMwEAN910E+bPn4+nn34aFRUVePvtt/H+++9jyJAhAOqErtatWwfO37NnD6ZNm4Y9e/YEljd44IEHMGfOHEybNg3PPPMMevfujT//+c+4/fbbcf3112P37t2YPXu27TITzuJnJBTKP0MQRCRoEAJKerIXG58cFrN7W6Fnz56q3y1btkRJSQl+/vlnVFRUhKTvP3XqFHbs2AGgbp2kxx9/HF988QUOHDiA2tpanDp1Cnv27AnvITS0a9cuIJywZQTqtCvV1dWqhR9zc3PRuXPnwO9169bB5/OhU6dOqutWVVWpnu/+++/HrFmz8I9//ANfffUVLV3gIqwZLgmCIKzTIAQUSZIsmVliSXJysuq3JEnw+/2oqKhAy5YtA34aLIqPyAMPPIC5c+fihRdewOmnn4709HRcc801qK6ujkoZzVJRUQGv14tVq1aFpKRv3Lhx4O+SkhJs3boVXq8X27Ztw/Dhw8MrOOEYVn2rCIIgrBIfozaBvn37ori4GElJSWjXrh33mB9++AG33HILrrzySgB1gsCuXbtUx6SkpMDn80WsnB06dEBycjKWL1+OwsJCAMCxY8ewdetWXHDBBQCAPn36wOfzoaSkBOeff77wWrfddht69OiBsWPH4o477sDQoUPRtWvXiJWdME9eZlqsi0AQRIJDAkqcMHToUBQVFeGKK67Ac889h06dOmH//v344osvcOWVV+LMM89Ex44d8cknn2DUqFGQJAmPPPJIiGajXbt2WLx4Ma6//nqkpqaiWbNmjpazcePGGDt2LCZNmoSmTZsiLy8Pf/zjH+HxBAPGOnXqhNGjR+Pmm2/Giy++iD59+uDQoUOYP38+evbsiZEjR2Lq1KlYunQp1q5dizZt2uCLL77A6NGjsWzZMqSkpDhaZsI6bXIz8PqN/ZCTkWx8MEEQhA0aRJhxIiBJEr788ksMHDgQt956Kzp16hRwHm3RogUA4KWXXkKTJk1wzjnnYNSoURg2bBj69u2rus6TTz6JXbt2oUOHDmjevHlEyvr888/j/PPPx6hRozB06FCcd9556Nevn+qYadOm4eabb8b999+Pzp0744orrsCPP/6IwsJCbN68GZMmTcKrr76KNm3aAABeffVVHD58GI888khEykxYZ3j3fJx9GvkFEQQRGSQ5Do3J5eXlyM7ORllZGbKyslT7KisrsXPnTrRv3x5paaSGbkjQuycIgnA3euO3FtKgEARBEAThOkhAaeCMGDECjRs35v73zDPPxLp4BEEQRAOFnGQbOG+99RZOnTrF3Zebmxvl0hAEQRBEHSSgNHBatWoV6yIQBEEQRAgJa+KxkjiMSAzonRMEQSQOCadBSUlJgcfjwf79+9G8eXOkpKTQWiEJjizLqK6uxqFDh+DxeChPCkEQRAKQcAKKx+NB+/btceDAAezfvz/WxSGiSEZGBgoLC1VJ4QiCIIj4JOEEFKBOi1JYWIja2tqIpnUn3IPX60VSUhJpywiCIBKEhBRQgLrMq8nJySEL2xEEQRAE4X5IF04QBEEQhOsgAYUgCIIgCNdBAgpBEARBEK4jLn1QlPUNy8vLY1wSgiAIgiDMoozbZtYpjksB5fjx4wCANm3axLgkBEEQBEFY5fjx48jOztY9RpLNiDEuw+/3Y//+/cjMzHQ8rLS8vBxt2rTB3r17DZeCTjTo2RvmswMN+/np2RvmswMN+/lj9eyyLOP48eMoKCgwzFkVlxoUj8eD1q1bR/QeWVlZDa7BKtCzN8xnBxr289OzN8xnBxr288fi2Y00JwrkJEsQBEEQhOsgAYUgCIIgCNdBAoqG1NRUPPbYY0hNTY11UaIOPXvDfHagYT8/PXvDfHagYT9/PDx7XDrJEgRBEASR2JAGhSAIgiAI10ECCkEQBEEQroMEFIIgCIIgXAcJKARBEARBuA4SUAiCIAiCcB0koDBMnToV7dq1Q1paGgYMGIAVK1bEukhhM2XKFPTv3x+ZmZnIy8vDFVdcgS1btqiOGTRoECRJUv135513qo7Zs2cPRo4ciYyMDOTl5WHSpEmora2N5qNY5vHHHw95ri5dugT2V1ZWYvz48WjatCkaN26Mq6++GgcPHlRdIx6fW6Fdu3Yhzy9JEsaPHw8gsd774sWLMWrUKBQUFECSJMyaNUu1X5ZlPProo2jZsiXS09MxdOhQbNu2TXXM0aNHMXr0aGRlZSEnJwdjx45FRUWF6pi1a9fi/PPPR1paGtq0aYPnnnsu0o9miN6z19TUYPLkyejRowcaNWqEgoIC3Hzzzdi/f7/qGry28uyzz6qOceOzA8bv/pZbbgl5tuHDh6uOScR3D4D7/UuShOeffz5wjKvfvUzIsizLH374oZySkiK/88478oYNG+Q77rhDzsnJkQ8ePBjrooXFsGHD5GnTpsnr16+X16xZI19yySVyYWGhXFFRETjmggsukO+44w75wIEDgf/KysoC+2tra+Xu3bvLQ4cOlX/66Sf5yy+/lJs1ayY/9NBDsXgk0zz22GPyGWecoXquQ4cOBfbfeeedcps2beT58+fLK1eulM8++2z5nHPOCeyP1+dWKCkpUT373LlzZQDyt99+K8tyYr33L7/8Uv7jH/8of/LJJzIAeebMmar9zz77rJydnS3PmjVL/vnnn+XLLrtMbt++vXzq1KnAMcOHD5d79eolL1u2TP7uu+/k008/Xb7hhhsC+8vKyuQWLVrIo0ePltevXy//+9//ltPT0+U33ngjWo/JRe/ZS0tL5aFDh8offfSRvHnzZnnp0qXyWWedJffr1091jbZt28pPPvmkqi2wfYRbn12Wjd/9mDFj5OHDh6ue7ejRo6pjEvHdy7KseuYDBw7I77zzjixJkrxjx47AMW5+9ySg1HPWWWfJ48ePD/z2+XxyQUGBPGXKlBiWynlKSkpkAPKiRYsC2y644AL597//vfCcL7/8UvZ4PHJxcXFg22uvvSZnZWXJVVVVkSxuWDz22GNyr169uPtKS0vl5ORk+eOPPw5s27RpkwxAXrp0qSzL8fvcIn7/+9/LHTp0kP1+vyzLifvetR213++X8/Pz5eeffz6wrbS0VE5NTZX//e9/y7Isyxs3bpQByD/++GPgmK+++kqWJEnet2+fLMuy/Oqrr8pNmjRRPfvkyZPlzp07R/iJzMMbpLSsWLFCBiDv3r07sK1t27byyy+/LDwnHp5dlvnPP2bMGPnyyy8XntOQ3v3ll18uX3jhhaptbn73ZOIBUF1djVWrVmHo0KGBbR6PB0OHDsXSpUtjWDLnKSsrAwDk5uaqtn/wwQdo1qwZunfvjoceeggnT54M7Fu6dCl69OiBFi1aBLYNGzYM5eXl2LBhQ3QKbpNt27ahoKAAp512GkaPHo09e/YAAFatWoWamhrVO+/SpQsKCwsD7zyen1tLdXU13n//fdx2222qFcAT9b2z7Ny5E8XFxap3nZ2djQEDBqjedU5ODs4888zAMUOHDoXH48Hy5csDxwwcOBApKSmBY4YNG4YtW7bg2LFjUXqa8CkrK4MkScjJyVFtf/bZZ9G0aVP06dMHzz//vMqUF+/PvnDhQuTl5aFz58646667cOTIkcC+hvLuDx48iC+++AJjx44N2efWdx+Xqxk7zeHDh+Hz+VQdMQC0aNECmzdvjlGpnMfv9+Pee+/Fueeei+7duwe2//a3v0Xbtm1RUFCAtWvXYvLkydiyZQs++eQTAEBxcTG3bpR9bmXAgAGYPn06OnfujAMHDuCJJ57A+eefj/Xr16O4uBgpKSkhnXSLFi0CzxSvz81j1qxZKC0txS233BLYlqjvXYtSVt6zsO86Ly9PtT8pKQm5ubmqY9q3bx9yDWVfkyZNIlJ+J6msrMTkyZNxww03qFawveeee9C3b1/k5uZiyZIleOihh3DgwAG89NJLAOL72YcPH46rrroK7du3x44dO/Dwww9jxIgRWLp0Kbxeb4N59++++y4yMzNx1VVXqba7+d2TgNKAGD9+PNavX4/vv/9etX3cuHGBv3v06IGWLVtiyJAh2LFjBzp06BDtYjrGiBEjAn/37NkTAwYMQNu2bfGf//wH6enpMSxZ9Hn77bcxYsQIFBQUBLYl6nsn+NTU1ODaa6+FLMt47bXXVPsmTpwY+Ltnz55ISUnB7373O0yZMsXVa7WY4frrrw/83aNHD/Ts2RMdOnTAwoULMWTIkBiWLLq88847GD16NNLS0lTb3fzuycQDoFmzZvB6vSERHAcPHkR+fn6MSuUsEyZMwOzZs/Htt9+idevWuscOGDAAALB9+3YAQH5+PrdulH3xQk5ODjp16oTt27cjPz8f1dXVKC0tVR3DvvNEee7du3dj3rx5uP3223WPS9T3rpRV7/vOz89HSUmJan9tbS2OHj2aEO1BEU52796NuXPnqrQnPAYMGIDa2lrs2rULQHw/u5bTTjsNzZo1U7XzRH73APDdd99hy5Ythn0A4K53TwIKgJSUFPTr1w/z588PbPP7/Zg/fz6KiopiWLLwkWUZEyZMwMyZM7FgwYIQVR2PNWvWAABatmwJACgqKsK6detUH7HSyXXr1i0i5Y4EFRUV2LFjB1q2bIl+/fohOTlZ9c63bNmCPXv2BN55ojz3tGnTkJeXh5EjR+oel6jvvX379sjPz1e96/Lycixfvlz1rktLS7Fq1arAMQsWLIDf7w8IbkVFRVi8eDFqamoCx8ydOxedO3d2tYpfEU62bduGefPmoWnTpobnrFmzBh6PJ2D6iNdn5/Hrr7/iyJEjqnaeqO9e4e2330a/fv3Qq1cvw2Nd9e4j7oYbJ3z44YdyamqqPH36dHnjxo3yuHHj5JycHFUEQzxy1113ydnZ2fLChQtVYWQnT56UZVmWt2/fLj/55JPyypUr5Z07d8qffvqpfNppp8kDBw4MXEMJN7344ovlNWvWyHPmzJGbN2/uynBTlvvvv19euHChvHPnTvmHH36Qhw4dKjdr1kwuKSmRZbkuzLiwsFBesGCBvHLlSrmoqEguKioKnB+vz83i8/nkwsJCefLkyartifbejx8/Lv/000/yTz/9JAOQX3rpJfmnn34KRKo8++yzck5Ojvzpp5/Ka9eulS+//HJumHGfPn3k5cuXy99//73csWNHVahpaWmp3KJFC/mmm26S169fL3/44YdyRkZGzENN9Z69urpavuyyy+TWrVvLa9asUfUBSlTGkiVL5Jdfflles2aNvGPHDvn999+XmzdvLt98882Be7j12WVZ//mPHz8uP/DAA/LSpUvlnTt3yvPmzZP79u0rd+zYUa6srAxcIxHfvUJZWZmckZEhv/baayHnu/3dk4DC8Morr8iFhYVySkqKfNZZZ8nLli2LdZHCBgD3v2nTpsmyLMt79uyRBw4cKOfm5sqpqany6aefLk+aNEmVD0OWZXnXrl3yiBEj5PT0dLlZs2by/fffL9fU1MTgicxz3XXXyS1btpRTUlLkVq1aydddd528ffv2wP5Tp07J//d//yc3adJEzsjIkK+88kr5wIEDqmvE43OzfP311zIAecuWLartifbev/32W247HzNmjCzLdaHGjzzyiNyiRQs5NTVVHjJkSEidHDlyRL7hhhvkxo0by1lZWfKtt94qHz9+XHXMzz//LJ933nlyamqq3KpVK/nZZ5+N1iMK0Xv2nTt3CvsAJR/OqlWr5AEDBsjZ2dlyWlqa3LVrV/mZZ55RDeCy7M5nl2X95z958qR88cUXy82bN5eTk5Pltm3bynfccUfIxDMR373CG2+8Iaenp8ulpaUh57v93UuyLMsRVdEQBEEQBEFYhHxQCIIgCIJwHSSgEARBEAThOkhAIQiCIAjCdZCAQhAEQRCE6yABhSAIgiAI10ECCkEQBEEQroMEFIIgCIIgXAcJKARBEARBuA4SUAiCIAiCcB0koBAEQRAE4TpIQCEIgiAIwnX8P+GdsUYKvlYtAAAAAElFTkSuQmCC\n" }, "metadata": {} } ], "source": [ "X[['heat_index']].plot() # plot of heat index" ] }, { "cell_type": "code", "execution_count": 18, "id": "7d1bd566-ef1c-4ddb-9d46-9863d413ac9a", "metadata": { "id": "7d1bd566-ef1c-4ddb-9d46-9863d413ac9a", "outputId": "5f87dcf9-f4f1-466c-ca3d-06a46c77dccc", "colab": { "base_uri": "https://localhost:8080/" } }, "outputs": [ { "output_type": "execute_result", "data": { "text/plain": [ "datetime 1781\n", "temp 107\n", "dew 184\n", "humidity 546\n", "sealevelpressure 177\n", "winddir 1089\n", "solarradiation 1194\n", "windspeed 172\n", "precipprob 2\n", "preciptype 2\n", "heat_index 1708\n", "weather 4\n", "dtype: int64" ] }, "metadata": {}, "execution_count": 18 } ], "source": [ "data.nunique() # finding for the count of unique values" ] }, { "cell_type": "code", "execution_count": 19, "id": "5e5828fb-19f6-407d-9b77-790da197a092", "metadata": { "id": "5e5828fb-19f6-407d-9b77-790da197a092", "outputId": "7cbdacac-609c-45ab-bee0-cb5401b631a9", "colab": { "base_uri": "https://localhost:8080/" } }, "outputs": [ { "output_type": "execute_result", "data": { "text/plain": [ "(1781, 12)" ] }, "metadata": {}, "execution_count": 19 } ], "source": [ "data.shape # gives the shape of data" ] }, { "cell_type": "code", "execution_count": 20, "id": "5f27f2c0-c9ef-4a15-afe9-749a52866eb8", "metadata": { "id": "5f27f2c0-c9ef-4a15-afe9-749a52866eb8", "outputId": "fbd3aa85-522e-4e69-82d8-30a99f989a4a", "colab": { "base_uri": "https://localhost:8080/" } }, "outputs": [ { "output_type": "execute_result", "data": { "text/plain": [ "Index(['datetime', 'temp', 'dew', 'humidity', 'sealevelpressure', 'winddir',\n", " 'solarradiation', 'windspeed', 'precipprob', 'preciptype', 'heat_index',\n", " 'weather'],\n", " dtype='object')" ] }, "metadata": {}, "execution_count": 20 } ], "source": [ "data.columns # gives the columns of data" ] }, { "cell_type": "code", "execution_count": 21, "id": "9e77009e-deaf-4457-a240-13d5813950b0", "metadata": { "id": "9e77009e-deaf-4457-a240-13d5813950b0", "outputId": "0a3682a2-d075-4434-ff6f-85154405685c", "colab": { "base_uri": "https://localhost:8080/" } }, "outputs": [ { "output_type": "stream", "name": "stdout", "text": [ "\n", "RangeIndex: 1781 entries, 0 to 1780\n", "Data columns (total 12 columns):\n", " # Column Non-Null Count Dtype \n", "--- ------ -------------- ----- \n", " 0 datetime 1781 non-null object \n", " 1 temp 1781 non-null float64\n", " 2 dew 1781 non-null float64\n", " 3 humidity 1781 non-null float64\n", " 4 sealevelpressure 1781 non-null float64\n", " 5 winddir 1781 non-null float64\n", " 6 solarradiation 1781 non-null float64\n", " 7 windspeed 1781 non-null float64\n", " 8 precipprob 1781 non-null int64 \n", " 9 preciptype 1781 non-null int64 \n", " 10 heat_index 1781 non-null float64\n", " 11 weather 1781 non-null int64 \n", "dtypes: float64(8), int64(3), object(1)\n", "memory usage: 167.1+ KB\n" ] } ], "source": [ "data.info() # All information about data" ] }, { "cell_type": "code", "execution_count": 22, "id": "27265752-7453-4e5d-b26b-3012eb44e0c2", "metadata": { "id": "27265752-7453-4e5d-b26b-3012eb44e0c2" }, "outputs": [], "source": [ "data= data[[\"temp\",\"humidity\",\"heat_index\",\"weather\"]] # taking only the required data" ] }, { "cell_type": "code", "execution_count": 23, "id": "9fc570ff-263a-40b4-a651-b0e94a2d3e9a", "metadata": { "id": "9fc570ff-263a-40b4-a651-b0e94a2d3e9a", "outputId": "72b23390-fef9-4acd-9cc2-dd7345acd1f0", "colab": { "base_uri": "https://localhost:8080/", "height": 206 } }, "outputs": [ { "output_type": "execute_result", "data": { "text/plain": [ " temp humidity heat_index weather\n", "0 28.4 37.8 143.886492 4\n", "1 26.8 44.8 164.714809 4\n", "2 25.5 52.8 184.766321 3\n", "3 26.4 46.6 169.873735 4\n", "4 27.1 44.9 163.735238 4" ], "text/html": [ "\n", "
\n", "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
temphumidityheat_indexweather
028.437.8143.8864924
126.844.8164.7148094
225.552.8184.7663213
326.446.6169.8737354
427.144.9163.7352384
\n", "
\n", "
\n", "\n", "
\n", " \n", "\n", " \n", "\n", " \n", "
\n", "\n", "\n", "
\n", " \n", "\n", "\n", "\n", " \n", "
\n", "\n", "
\n", "
\n" ], "application/vnd.google.colaboratory.intrinsic+json": { "type": "dataframe", "variable_name": "data", "summary": "{\n \"name\": \"data\",\n \"rows\": 1781,\n \"fields\": [\n {\n \"column\": \"temp\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 1.9600266457661053,\n \"min\": 20.2,\n \"max\": 32.8,\n \"num_unique_values\": 107,\n \"samples\": [\n 27.9,\n 25.1,\n 27.1\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"humidity\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 14.533809054667492,\n \"min\": 28.6,\n \"max\": 98.2,\n \"num_unique_values\": 546,\n \"samples\": [\n 65.1,\n 69.4,\n 88.9\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"heat_index\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 11.930881214526531,\n \"min\": 114.19163260497601,\n \"max\": 215.22089103168406,\n \"num_unique_values\": 1708,\n \"samples\": [\n 182.53844174300394,\n 181.19936980480003,\n 189.022414764184\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"weather\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0,\n \"min\": 1,\n \"max\": 4,\n \"num_unique_values\": 4,\n \"samples\": [\n 3,\n 1,\n 4\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n }\n ]\n}" } }, "metadata": {}, "execution_count": 23 } ], "source": [ "data.head() # shows some data from starting" ] }, { "cell_type": "code", "execution_count": 24, "id": "757db057-87e1-4b0d-b6db-8d1314fea1ff", "metadata": { "id": "757db057-87e1-4b0d-b6db-8d1314fea1ff", "outputId": "75d0ac61-0453-41c1-a7b8-a5a77cb48310", "colab": { "base_uri": "https://localhost:8080/" } }, "outputs": [ { "output_type": "stream", "name": "stdout", "text": [ "\n", "RangeIndex: 1781 entries, 0 to 1780\n", "Data columns (total 4 columns):\n", " # Column Non-Null Count Dtype \n", "--- ------ -------------- ----- \n", " 0 temp 1781 non-null float64\n", " 1 humidity 1781 non-null float64\n", " 2 heat_index 1781 non-null float64\n", " 3 weather 1781 non-null int64 \n", "dtypes: float64(3), int64(1)\n", "memory usage: 55.8 KB\n" ] } ], "source": [ "data.info() # again checking the data info" ] }, { "cell_type": "code", "execution_count": 25, "id": "2615bc26-feb7-49cb-ab9b-b91ba60289af", "metadata": { "id": "2615bc26-feb7-49cb-ab9b-b91ba60289af", "outputId": "ffb252da-fc3f-43b5-872d-f56144b0fd77", "colab": { "base_uri": "https://localhost:8080/" } }, "outputs": [ { "output_type": "execute_result", "data": { "text/plain": [ "temp 0\n", "humidity 0\n", "heat_index 0\n", "weather 0\n", "dtype: int64" ] }, "metadata": {}, "execution_count": 25 } ], "source": [ "data.isna().sum() # searching for null values" ] }, { "cell_type": "code", "execution_count": 26, "id": "e5ea2699-6047-4202-91b0-0b8c48aa49a1", "metadata": { "id": "e5ea2699-6047-4202-91b0-0b8c48aa49a1", "outputId": "3604e243-a4ff-4b2f-b023-aeca31139ea9", "colab": { "base_uri": "https://localhost:8080/" } }, "outputs": [ { "output_type": "execute_result", "data": { "text/plain": [ "73" ] }, "metadata": {}, "execution_count": 26 } ], "source": [ "data.duplicated().sum() # searching for the duplicate values" ] }, { "cell_type": "code", "execution_count": 27, "id": "00502630-e742-4528-b743-90ddd7820823", "metadata": { "id": "00502630-e742-4528-b743-90ddd7820823", "outputId": "40d9efec-6d84-45e8-d5e9-ef4d383aa41b", "colab": { "base_uri": "https://localhost:8080/" } }, "outputs": [ { "output_type": "execute_result", "data": { "text/plain": [ "(1708, 4)" ] }, "metadata": {}, "execution_count": 27 } ], "source": [ "data.drop_duplicates(inplace=True) # deleting the duplicate values\n", "data.shape" ] }, { "cell_type": "code", "execution_count": 28, "id": "2a4d0a7c-f8da-46e6-be1b-c92802f045c1", "metadata": { "id": "2a4d0a7c-f8da-46e6-be1b-c92802f045c1", "outputId": "04bff355-e4cc-428a-b23e-5f91e0c0e540", "colab": { "base_uri": "https://localhost:8080/" } }, "outputs": [ { "output_type": "execute_result", "data": { "text/plain": [ "array([4, 3, 2, 1])" ] }, "metadata": {}, "execution_count": 28 } ], "source": [ "data[\"weather\"].unique() # gives the unique values of weather" ] }, { "cell_type": "code", "execution_count": 29, "id": "36b10ad8-e3e2-40fa-880a-5afce71c6acf", "metadata": { "id": "36b10ad8-e3e2-40fa-880a-5afce71c6acf", "outputId": "66aea85f-fc50-4d69-bbf4-471c9ac41957", "colab": { "base_uri": "https://localhost:8080/", "height": 461 } }, "outputs": [ { "output_type": "execute_result", "data": { "text/plain": [ "" ] }, "metadata": {}, "execution_count": 29 }, { "output_type": "display_data", "data": { "text/plain": [ "
" ], "image/png": "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\n" }, "metadata": {} } ], "source": [ "data[\"weather\"].value_counts().plot.bar() # plot of weather" ] }, { "cell_type": "code", "execution_count": 30, "id": "0917a262-f412-448c-a85f-8b29e7163370", "metadata": { "id": "0917a262-f412-448c-a85f-8b29e7163370", "outputId": "a7c2b92b-4a20-4ae0-99e0-abcaac3fc5a7", "colab": { "base_uri": "https://localhost:8080/" } }, "outputs": [ { "output_type": "execute_result", "data": { "text/plain": [ "weather\n", "3 1030\n", "2 462\n", "4 215\n", "1 1\n", "Name: count, dtype: int64" ] }, "metadata": {}, "execution_count": 30 } ], "source": [ "data[\"weather\"].value_counts() # gives the value count of every unique weather conditions" ] }, { "cell_type": "markdown", "id": "-s6FjDfTiWXC", "metadata": { "id": "-s6FjDfTiWXC" }, "source": [ "**A Seaborn heatmap is a data visualization tool that displays a matrix of values as a grid of colors, making it easy to identify patterns, correlations, and variations in the data. It is particularly useful for visualizing correlation matrices, confusion matrices, and other types of matrix data.**" ] }, { "cell_type": "code", "execution_count": 31, "id": "b0639500-5651-454e-8326-80e0b38c325d", "metadata": { "id": "b0639500-5651-454e-8326-80e0b38c325d", "outputId": "d8f3d7eb-a141-45d2-9e32-b2d1516ed6b5", "colab": { "base_uri": "https://localhost:8080/", "height": 452 } }, "outputs": [ { "output_type": "execute_result", "data": { "text/plain": [ "" ] }, "metadata": {}, "execution_count": 31 }, { "output_type": "display_data", "data": { "text/plain": [ "
" ], "image/png": "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tLzvax06dAgODg71miMiac5FdnY2QkNDAdwa47l+/TpsbGwQExNz3+4cIiIiY6dRKXc0BC8vLwQHByMiIgLp6enYv38/Jk+ejLFjx2pXipw/fx49evRAeno6gFuJxfDhw1FWVoa1a9eipKQEarUaarUaVVVVAIDvv/8ea9aswbFjx3Dq1Cn885//xPz58/HWW2/VKz5JPRfW1tbaeRZubm44ffo0HnroIQC3JogQERE1Zca+FBUANm3ahMmTJ2PYsGEwMTHBs88+q92PCgBu3ryJEydO4Nq1awCAzMxMpKWlAQA8PT112srNzYWHhwfMzMywevVqvPPOOxBCwNPTE8uWLUNERES9YpOUXAwYMAC//PILvLy8MHLkSEybNg1Hjx7F1q1bMWDAAClNEhERUT04OjrWuGEWAHh4eOjsqD1kyJAad9i+Izg4WJHpDZKSi2XLlmm3GJ03bx5KS0uxZcsWdO3alStFiIioyTP+fgvjJim56Ny5s/axtbU1d+UkIqIHSnO94ZhSJE3oBIDi4mKsWbMGUVFRKCoqAnBrPOf8+fOKBUdERERNj6SeiyNHjiAwMBB2dnY4c+YMIiIi4OjoiK1btyIvLw8bN25UOk4iIqJG0xQmdBozST0XkZGRCAsLw8mTJ3XWyI4cORL79u1TLDgiIiJDEAoezZGknouDBw/i008/rVbetm3bOu9pTkREZKw450IeST0XFhYWKCkpqVaek5NTp53FiIiI6MElKbl46qmnEBMTg5s3bwIAVCoV8vLyMGPGDDz77LOKBkhERNTYNBCKHc2RpORi6dKlKC0thbOzM65fv46AgAB4enrCxsYGH330kdIxEhERNSrOuZBH0pwLOzs77N69G/v378fhw4dRWlqKPn36IDAwUOn4iIiIqImRlFwAt267npSUhMLCQmg0Ghw/fly7DWlCQoJiARIRETU2TuiUR1JyMW/ePMTExKBfv35wc3ODStVAt30jIiIyANFsBzSUISm5iI+Px/r16/HKK68oHQ8RERE1cZKSi4qKCgwcOFDpWIiIiIwCh0XkkbRaZMKECbXe5pWIiKgp41JUeerccxEZGal9rNFo8Nlnn2HPnj3w8fGBmZmZTl3edp2IiKj5qnNykZWVpfPc19cXAHDs2DGdck7uJCKipq559jcop87JRXJyckPGQUREZDSa63CGUiTvc0FE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dsDZ2fm+7ZSXl6O8vFynrEJUwVxlWp9wiIiIyAjVK7mwt7eHSqWCSqVCt27dqp1XqVSYN2/efduJi4urVi/M2guv2fSsTzhEREQNorkOZyilXslFcnIyhBB47LHH8M0338DR0VF7ztzcHB07doS7u/t924mKitJZ2goAB7u+Wp9QiIiIGgyXospTr+QiICAAAJCbm4v27dvDxETSlA1YWFjAwsJCp4xDIkRERA8GSfcW6dixIwDg2rVryMvLQ0VFhc55Hx8f+ZEREREZiKaZTsRUiqTk4sKFCwgPD8ePP/54z/NVVVWygiIiIjIkDovII2lcY+rUqSguLkZaWhqsrKyQmJiIDRs2oGvXrti2bZvSMRIREVETIqnn4qeffsJ//vMf9OvXDyYmJujYsSMef/xx2NraIi4uDk888YTScRIRETUaDovII6nnoqysTLufhYODAy5cuAAA8Pb2RmZmpnLRERERGYBQ8H/NkaTkonv37jhx4gQAoFevXvj0009x/vx5xMfHw83NTdEAiYiIqGmRNCzy9ttvIz8/HwAQHR2N4OBgbNq0Cebm5li/fr2S8RERETU6DovIIym5ePnll7WP+/bti7Nnz+L48ePo0KED2rRpo1hwREREhtBchzOUIim5uKOiogK5ubno0qUL+vTpo1RMREREBsWeC3kkzbm4du0axo8fj5YtW+Khhx5CXl4eAOCtt97CggULFA2QiIiImhZJyUVUVBQOHz6MlJQUnTujBgYGYsuWLYoFR0REZAhcLSKPpGGR7777Dlu2bMGAAQOgUqm05Q899BBOnz6tWHBERESGIITG0CE0aZJ6Li5cuKDd5+JuZWVlOskGERERNT+Skot+/fph+/bt2ud3Eoo1a9bA399fmciIiIgMRAOh2NEcSRoWmT9/PkaMGIE//vgDlZWV+Pjjj/HHH3/gwIED2Lt3r9IxEhERNSrB1SKySOq5GDRoEA4fPozKykp4e3tj165dcHZ2RmpqKvr27at0jERERNSESEouQkNDsXfvXsycORPp6en4448/8H//93/w9vZWOj4iIqJG1xSGRYqKijBu3DjY2trC3t4e48ePR2lpaY31z5w5A5VKdc/j66+/1ta71/kvv/yyXrFJSi7Mzc0RFxeHbt26oX379nj55ZexZs0anDx5UkpzRERERkUIodjRUMaNG4fff/8du3fv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\n" }, "metadata": {} } ], "source": [ "sns.heatmap(data.corr()) # plot the heat map of the data" ] }, { "cell_type": "code", "execution_count": 32, "id": "_YsaJoHziqPC", "metadata": { "id": "_YsaJoHziqPC" }, "outputs": [], "source": [ "# Fill missing values\n", "data.fillna(method='ffill', inplace=True)" ] }, { "cell_type": "code", "execution_count": 33, "id": "6NpNPZOiivE4", "metadata": { "id": "6NpNPZOiivE4" }, "outputs": [], "source": [ "# Convert all feature columns to numeric\n", "for col in data.columns:\n", " data[col] = pd.to_numeric(data[col], errors='coerce')" ] }, { "cell_type": "code", "execution_count": 34, "id": "fthKrROZiu33", "metadata": { "id": "fthKrROZiu33" }, "outputs": [], "source": [ "# Fill any remaining NaNs that might have been introduced\n", "data.fillna(0, inplace=True)" ] }, { "cell_type": "code", "execution_count": 35, "id": "scg8GT-siukT", "metadata": { "id": "scg8GT-siukT" }, "outputs": [], "source": [ "# Encode the target variable\n", "from sklearn.preprocessing import LabelEncoder\n", "label_encoder = LabelEncoder()\n", "data['weather'] = label_encoder.fit_transform(data['weather'])" ] }, { "cell_type": "code", "execution_count": 36, "id": "6ff31ff3-13bc-419a-aa3b-b68b4866299c", "metadata": { "id": "6ff31ff3-13bc-419a-aa3b-b68b4866299c" }, "outputs": [], "source": [ "# Define features and target\n", "X = data.drop('weather', axis=1)\n", "y = data['weather']" ] }, { "cell_type": "markdown", "id": "JXHwmjcQFEug", "metadata": { "id": "JXHwmjcQFEug" }, "source": [ "### **3. Model Development:**\n", "Split the dataset into training and testing sets, and implement a Decision Tree Classifier using TensorFlow." ] }, { "cell_type": "code", "execution_count": 37, "id": "6oaWSvJtjMjX", "metadata": { "id": "6oaWSvJtjMjX" }, "outputs": [], "source": [ "# Split the dataset into training and testing sets\n", "X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)" ] }, { "cell_type": "code", "execution_count": 38, "id": "S-4Y0tTHjN36", "metadata": { "id": "S-4Y0tTHjN36" }, "outputs": [], "source": [ "# Build the Decision Tree Classifier model\n", "model = tf.keras.Sequential([\n", " tf.keras.layers.Input(shape=(X_train.shape[1],)),\n", " tf.keras.layers.Dense(128, activation='relu'),\n", " tf.keras.layers.Dense(64, activation='relu'),\n", " tf.keras.layers.Dense(len(label_encoder.classes_), activation='softmax')\n", "])" ] }, { "cell_type": "code", "execution_count": 39, "id": "XFWm3eccKkzK", "metadata": { "id": "XFWm3eccKkzK" }, "outputs": [], "source": [ "# Compile the model\n", "model.compile(optimizer='adam', loss='sparse_categorical_crossentropy', metrics=['accuracy'])" ] }, { "cell_type": "markdown", "id": "XAEHkelZFhfZ", "metadata": { "id": "XAEHkelZFhfZ" }, "source": [ "### **4. Model Training**\n", "Train the model using the training data and monitor its performance." ] }, { "cell_type": "code", "execution_count": 40, "id": "3a198884-0e31-4304-b56c-56a2cdb9de92", "metadata": { "id": "3a198884-0e31-4304-b56c-56a2cdb9de92" }, "outputs": [], "source": [ "X = data.loc[:,[\"temp\",\"humidity\",\"heat_index\"]]" ] }, { "cell_type": "code", "execution_count": 41, "id": "686e0661-2ed9-4ba8-80a0-ee1389fa098b", "metadata": { "id": "686e0661-2ed9-4ba8-80a0-ee1389fa098b", "outputId": "02ef979d-5371-4a47-bc6f-09af57088f04", "colab": { "base_uri": "https://localhost:8080/", "height": 423 } }, "outputs": [ { "output_type": "execute_result", "data": { "text/plain": [ " temp humidity heat_index\n", "0 28.4 37.8 143.886492\n", "1 26.8 44.8 164.714809\n", "2 25.5 52.8 184.766321\n", "3 26.4 46.6 169.873735\n", "4 27.1 44.9 163.735238\n", "... ... ... ...\n", "1776 27.4 41.5 155.554949\n", "1777 28.0 40.9 152.141608\n", "1778 28.4 56.9 176.390640\n", "1779 29.5 61.3 175.058042\n", "1780 29.7 65.4 176.508394\n", "\n", "[1708 rows x 3 columns]" ], "text/html": [ "\n", "
\n", "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
temphumidityheat_index
028.437.8143.886492
126.844.8164.714809
225.552.8184.766321
326.446.6169.873735
427.144.9163.735238
............
177627.441.5155.554949
177728.040.9152.141608
177828.456.9176.390640
177929.561.3175.058042
178029.765.4176.508394
\n", "

1708 rows × 3 columns

\n", "
\n", "
\n", "\n", "
\n", " \n", "\n", " \n", "\n", " \n", "
\n", "\n", "\n", "
\n", " \n", "\n", "\n", "\n", " \n", "
\n", "\n", "
\n", " \n", " \n", " \n", "
\n", "\n", "
\n", "
\n" ], "application/vnd.google.colaboratory.intrinsic+json": { "type": "dataframe", "variable_name": "X", "summary": "{\n \"name\": \"X\",\n \"rows\": 1708,\n \"fields\": [\n {\n \"column\": \"temp\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 1.9807687225735109,\n \"min\": 20.2,\n \"max\": 32.8,\n \"num_unique_values\": 107,\n \"samples\": [\n 27.9,\n 25.1,\n 27.1\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"humidity\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 14.595732459721276,\n \"min\": 28.6,\n \"max\": 98.2,\n \"num_unique_values\": 546,\n \"samples\": [\n 65.1,\n 69.4,\n 88.9\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"heat_index\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 12.123115446136252,\n \"min\": 114.19163260497601,\n \"max\": 215.22089103168406,\n \"num_unique_values\": 1708,\n \"samples\": [\n 182.53844174300394,\n 181.19936980480003,\n 189.022414764184\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n }\n ]\n}" } }, "metadata": {}, "execution_count": 41 } ], "source": [ "X" ] }, { "cell_type": "code", "execution_count": 42, "id": "1c574e38-29a7-44fc-8983-e24a3f264f6b", "metadata": { "id": "1c574e38-29a7-44fc-8983-e24a3f264f6b" }, "outputs": [], "source": [ "y = data.iloc[:,3].astype(int)" ] }, { "cell_type": "code", "execution_count": 43, "id": "51060de4-0256-4e3e-915f-488cc6f28cb7", "metadata": { "id": "51060de4-0256-4e3e-915f-488cc6f28cb7", "outputId": "2c88dcf7-3663-4d8a-ddfc-98b36bbdfa6d", "colab": { "base_uri": "https://localhost:8080/" } }, "outputs": [ { "output_type": "execute_result", "data": { "text/plain": [ "0 3\n", "1 3\n", "2 2\n", "3 3\n", "4 3\n", " ..\n", "1776 3\n", "1777 3\n", "1778 2\n", "1779 2\n", "1780 2\n", "Name: weather, Length: 1708, dtype: int64" ] }, "metadata": {}, "execution_count": 43 } ], "source": [ "y" ] }, { "cell_type": "code", "execution_count": 44, "id": "fbe2290c-0f0d-4331-ad3a-ecb9242f3c9e", "metadata": { "id": "fbe2290c-0f0d-4331-ad3a-ecb9242f3c9e" }, "outputs": [], "source": [ "X_train, X_test, y_train, y_test = train_test_split(X, y, train_size=0.7, random_state=42)" ] }, { "cell_type": "code", "execution_count": 45, "id": "dd998b57-56c1-4e20-ab77-b565e45693f6", "metadata": { "id": "dd998b57-56c1-4e20-ab77-b565e45693f6", "outputId": "d98f4d21-76ee-4dd8-a505-004216045dfc", "colab": { "base_uri": "https://localhost:8080/" } }, "outputs": [ { "output_type": "execute_result", "data": { "text/plain": [ "[[30.6, 43.6, 148.332029087616],\n", " [24.8, 52.3, 187.297434546036],\n", " [28.4, 84.0, 182.19137140239997],\n", " [29.3, 67.7, 179.52995468958096],\n", " [29.7, 79.3, 176.93902395398095],\n", " [27.0, 91.7, 184.24546479339998],\n", " [29.0, 80.6, 180.4729137591999],\n", " [30.4, 52.5, 162.3225732977],\n", " [30.7, 58.3, 166.97964945050097],\n", " [30.0, 69.3, 176.2498986317],\n", " [27.3, 93.2, 180.50731777015588],\n", " [29.1, 54.4, 170.2930334499959],\n", " [25.7, 76.3, 201.71453019242102],\n", " [28.8, 78.0, 182.62592425520003],\n", " [27.9, 84.8, 184.744815793804],\n", " [29.1, 69.6, 181.15321959815594],\n", " [28.0, 72.2, 187.75932743919995],\n", " [27.0, 43.1, 160.44603954459996],\n", " [27.3, 48.5, 169.57452343592502],\n", " [27.2, 90.7, 184.03045625259588],\n", " [29.0, 78.2, 181.39578888879996],\n", " [28.3, 76.4, 185.92375197084388],\n", " [23.5, 45.8, 180.48299488840004],\n", " [29.9, 45.6, 154.29900700615602],\n", " [29.2, 47.6, 160.29754251846398],\n", " [28.7, 72.0, 183.76573311310005],\n", " [31.3, 71.0, 169.62703171479993],\n", " [27.2, 63.3, 188.33850374851602],\n", " [28.7, 77.5, 183.347101592925],\n", " [26.1, 94.1, 187.38917410566097],\n", " [26.5, 59.9, 189.01409198132507],\n", " [26.1, 84.9, 196.18798456930102],\n", " [29.2, 66.3, 179.51342418995603],\n", " [28.3, 85.0, 182.11799861879993],\n", " [25.5, 52.0, 183.47857512750005],\n", " [28.3, 45.7, 160.567926619221],\n", " [25.9, 94.6, 188.11010060241586],\n", " [27.4, 91.8, 181.51468330006398],\n", " [30.3, 60.6, 170.663034528944],\n", " [26.3, 55.1, 184.29881293978895],\n", " [31.5, 70.8, 168.58118744629996],\n", " [26.1, 41.7, 160.73329634942903],\n", " [29.1, 70.0, 181.24129794869992],\n", " [26.5, 64.4, 192.93746794270004],\n", " [30.6, 66.0, 172.1729453791999],\n", " [30.9, 73.4, 171.6885347625761],\n", " [29.1, 84.5, 177.588537754525],\n", " [28.8, 73.2, 183.27261491081595],\n", " [30.3, 58.6, 169.08396960878403],\n", " [26.9, 66.1, 191.83594153910101],\n", " [30.8, 71.8, 172.27873290105603],\n", " [26.1, 92.6, 189.21547149985597],\n", " [27.1, 64.8, 189.93187959316398],\n", " [27.5, 86.6, 185.91978883480004],\n", " [25.4, 61.6, 196.57239298281598],\n", " [30.1, 79.5, 174.55772220852498],\n", " [28.3, 46.9, 162.70160898162902],\n", " [30.9, 72.0, 171.7494120359001],\n", " [28.5, 83.8, 181.7096152043999],\n", " [28.1, 88.6, 180.36659471121587],\n", " [29.3, 71.4, 180.36590098350396],\n", " [27.3, 91.2, 182.837918480636],\n", " [29.2, 79.5, 179.76657202009994],\n", " [27.1, 85.5, 189.30725399292507],\n", " [27.4, 93.0, 180.09806709679992],\n", " [29.8, 79.2, 176.402899418816],\n", " [26.9, 45.5, 165.70606373792498],\n", " [26.8, 37.0, 147.0006850296],\n", " [27.5, 90.9, 181.8668051889251],\n", " [28.7, 45.8, 159.19895738785598],\n", " [28.2, 47.5, 164.13809988779997],\n", " [27.4, 65.2, 188.554976651904],\n", " [23.9, 69.0, 211.00545402039998],\n", " [28.7, 83.7, 180.5553329975411],\n", " [29.5, 66.7, 178.105467537525],\n", " [27.1, 94.2, 180.56121766078405],\n", " [28.5, 52.4, 170.40598024509993],\n", " [29.5, 79.9, 177.84766729372492],\n", " [27.7, 59.9, 182.86731950110902],\n", " [29.7, 75.9, 177.949092676109],\n", " [28.0, 67.0, 186.25268544000002],\n", " [27.1, 85.1, 189.588641910901],\n", " [31.1, 49.0, 154.92791280840004],\n", " [27.7, 47.0, 165.29061319959996],\n", " [30.7, 69.3, 172.5697665681411],\n", " [25.1, 60.0, 196.51433053869988],\n", " [27.7, 85.8, 185.27503540289604],\n", " [29.9, 71.5, 177.096177498525],\n", " [26.3, 51.3, 178.6382118787809],\n", " [31.2, 66.9, 169.451626675364],\n", " [26.3, 56.5, 186.1384922207249],\n", " [29.3, 73.5, 180.4562248899249],\n", " [26.7, 89.7, 188.331592927781],\n", " [31.5, 72.7, 168.55857166792498],\n", " [29.1, 80.7, 179.8341355074289],\n", " [31.0, 55.7, 163.2582674614],\n", " [30.4, 73.6, 174.37490473305598],\n", " [26.6, 86.7, 191.637628253944],\n", " [30.9, 71.2, 171.73075646636406],\n", " [28.0, 89.5, 180.1218189525],\n", " [27.3, 91.8, 182.1664736488159],\n", " [32.1, 70.8, 165.506052362924],\n", " [31.4, 69.3, 168.95701626354395],\n", " [26.1, 50.4, 178.05281651231604],\n", " [28.7, 81.7, 181.72453869662115],\n", " [28.6, 80.0, 183.11344754319998],\n", " [29.5, 56.4, 170.70849215509998],\n", " [25.2, 77.7, 204.77101249979592],\n", " [29.3, 62.6, 176.9622816857439],\n", " [30.1, 75.0, 175.86438335719996],\n", " [27.3, 49.3, 170.92979174474098],\n", " [31.6, 72.7, 168.03439639808397],\n", " [29.4, 86.5, 174.21970231739988],\n", " [27.0, 50.2, 173.71758900240005],\n", " [28.0, 86.9, 182.5117402993],\n", " [31.5, 69.1, 168.418263761325],\n", " [28.7, 83.4, 180.74702384574402],\n", " [28.1, 57.3, 178.26225539086897],\n", " [31.9, 69.8, 166.46846922318406],\n", " [27.3, 90.2, 183.90416390257607],\n", " [31.2, 72.3, 170.15739471371606],\n", " [29.2, 56.0, 171.66430932879993],\n", " [26.9, 90.6, 186.09989679841598],\n", " [27.9, 86.8, 183.22416188732393],\n", " [28.0, 68.6, 186.9034582048],\n", " [29.3, 84.9, 176.092865840149],\n", " [29.9, 41.7, 147.25214301238898],\n", " [28.8, 67.9, 182.27871211160394],\n", " [27.2, 51.6, 175.03913223030395],\n", " [25.9, 74.8, 200.46593036636395],\n", " [31.3, 73.2, 169.57351536791595],\n", " [29.6, 38.2, 141.04632419174396],\n", " [26.8, 90.3, 187.069279772036],\n", " [29.6, 64.8, 176.7293347728639],\n", " [28.6, 51.6, 168.85533236873601],\n", " [28.7, 59.7, 177.70016122170105],\n", " [29.3, 53.5, 168.3054150119249],\n", " [26.0, 40.4, 158.06227130559998],\n", " [30.7, 59.0, 167.55536957559997],\n", " [25.9, 95.9, 186.36448253010084],\n", " [27.1, 93.4, 181.57506774177597],\n", " [25.4, 49.8, 180.16180923990396],\n", " [29.0, 79.7, 180.86186655579993],\n", " [31.4, 70.2, 169.058180485984],\n", " [29.8, 47.5, 157.77886239179998],\n", " [28.7, 67.6, 182.70757301564404],\n", " [28.1, 70.0, 186.77534953469993],\n", " [29.9, 58.7, 171.04395573826903],\n", " [30.5, 78.7, 172.61831193832498],\n", " [24.9, 51.2, 184.94263475724398],\n", " [32.4, 41.5, 138.6846773769],\n", " [31.5, 72.4, 168.57650798069997],\n", " [28.2, 86.4, 181.66969428358388],\n", " [29.7, 81.2, 176.05994897047597],\n", " [27.5, 90.0, 182.8156849375],\n", " [30.6, 72.9, 173.33358438965587],\n", " [30.1, 68.4, 175.5134045474361],\n", " [31.0, 74.7, 170.9843826974001],\n", " [28.4, 74.5, 185.54210176289996],\n", " [29.7, 70.7, 178.09668204042097],\n", " [29.1, 81.7, 179.33190745806894],\n", " [29.0, 69.4, 181.6494992952],\n", " [24.6, 71.0, 207.6549429831999],\n", " [29.0, 82.0, 179.76561215999993],\n", " [30.2, 76.7, 174.95727959413603],\n", " [27.3, 51.0, 173.6694090787999],\n", " [28.4, 48.1, 164.33370828603603],\n", " [29.5, 73.2, 179.34558880789982],\n", " [30.2, 81.4, 173.05250897846403],\n", " [27.5, 83.6, 188.02760853430001],\n", " [31.3, 73.0, 169.59040988519993],\n", " [30.4, 52.9, 162.80550222339605],\n", " [26.9, 93.5, 182.77362352832492],\n", " [24.5, 32.5, 141.29170901812503],\n", " [29.4, 53.2, 167.49217498166388],\n", " [28.6, 83.1, 181.539692768216],\n", " [25.1, 66.3, 202.17101132206898],\n", " [28.3, 89.3, 178.42476472878099],\n", " [31.8, 68.0, 166.71549539920008],\n", " [27.7, 80.3, 188.435036441101],\n", " [28.0, 56.0, 177.2743485999999],\n", " [29.1, 62.0, 177.5532671359],\n", " [28.9, 75.6, 182.55713058167598],\n", " [22.5, 53.7, 201.15510014532504],\n", " [27.4, 56.7, 180.9758775910639],\n", " [28.9, 83.3, 179.599818426109],\n", " [28.7, 64.4, 181.16023921596403],\n", " [28.3, 73.9, 186.13441287066894],\n", " [27.8, 88.6, 182.26846077878395],\n", " [30.9, 72.4, 171.7441645707961],\n", " [29.4, 83.6, 176.40771763177594],\n", " [25.6, 58.2, 191.789829689024],\n", " [27.5, 45.6, 163.51588747629998],\n", " [28.5, 70.6, 184.6762420235999],\n", " [29.4, 62.0, 176.05373140239996],\n", " [27.3, 89.8, 184.31217181713603],\n", " [28.5, 76.2, 184.7850483044],\n", " [26.1, 68.5, 197.6342930033249],\n", " [31.3, 71.6, 169.64130689508403],\n", " [24.6, 64.0, 203.26416835439997],\n", " [28.1, 86.8, 181.9673061683639],\n", " [29.7, 82.9, 175.08219629214898],\n", " [26.8, 88.4, 188.90189784774395],\n", " [26.0, 66.4, 197.0696562935999],\n", " [29.9, 69.6, 176.84181829063596],\n", " [29.6, 52.2, 165.351220105504],\n", " [26.4, 92.5, 187.31287316970003],\n", " [28.9, 60.8, 177.641012597884],\n", " [31.3, 73.7, 169.52075335422103],\n", " [29.8, 79.3, 176.36252866341593],\n", " [30.6, 75.5, 173.01549603579994],\n", " [27.2, 91.2, 183.49019841817596],\n", " [25.1, 64.8, 201.07377134100395],\n", " [30.3, 71.1, 174.91013670290897],\n", " [28.2, 82.9, 184.10048798066393],\n", " [31.3, 73.1, 169.58226336142897],\n", " [25.4, 59.0, 193.78029234640002],\n", " [30.8, 75.6, 171.89842698342406],\n", " [28.2, 82.0, 184.59744252960002],\n", " [25.5, 59.5, 193.824388543125],\n", " [30.7, 74.3, 172.66983680634095],\n", " [29.7, 42.6, 149.658494584784],\n", " [28.1, 46.1, 162.07532105874097],\n", " [28.5, 88.0, 178.41776127749998],\n", " [29.4, 49.6, 162.58515201609595],\n", " [27.2, 87.2, 187.34896262713588],\n", " [24.6, 51.7, 187.23031393538392],\n", " [30.0, 77.6, 175.8280306888],\n", " [29.3, 79.6, 179.14106661860387],\n", " [27.0, 46.1, 166.4626099006],\n", " [28.1, 86.1, 182.5330626275409],\n", " [28.6, 58.2, 176.780804706464],\n", " [27.9, 85.3, 184.38908171310905],\n", " [31.0, 68.7, 170.90734375340006],\n", " [28.0, 84.1, 184.59412639529998],\n", " [29.5, 61.3, 175.0580415815249],\n", " [30.7, 73.4, 172.764410311024],\n", " [26.4, 46.6, 169.87373523849598],\n", " [29.6, 66.5, 177.5031547249],\n", " [30.7, 64.7, 171.13032951642094],\n", " [29.9, 77.6, 176.395274152396],\n", " [28.0, 46.3, 162.8317402197],\n", " [26.9, 48.2, 170.74103012766398],\n", " [28.2, 84.4, 183.15576977414395],\n", " [29.7, 79.5, 176.85711262872496],\n", " [28.1, 74.9, 187.26366168114103],\n", " [25.5, 67.2, 200.4240976187],\n", " [29.6, 81.5, 176.48600510289998],\n", " [28.0, 82.6, 185.50007588879993],\n", " [27.3, 84.9, 188.452783231229],\n", " [30.9, 76.2, 171.20968659406407],\n", " [29.3, 69.5, 180.04449101672498],\n", " [27.9, 77.0, 188.18552199640007],\n", " [28.4, 88.9, 178.19091720891583],\n", " [26.5, 95.8, 182.42116163880002],\n", " [28.9, 82.1, 180.30899361378104],\n", " [30.6, 68.9, 173.01552729973588],\n", " [28.0, 81.0, 186.30523009999993],\n", " [31.2, 71.3, 170.15934078787606],\n", " [29.1, 78.2, 180.8124596067039],\n", " [29.4, 72.2, 179.8795648354239],\n", " [28.5, 88.2, 178.2327335323999],\n", " [29.7, 58.6, 171.89985169646408],\n", " [30.6, 54.0, 163.21793839039998],\n", " [28.5, 86.5, 179.7235425131249],\n", " [23.6, 55.6, 198.60638459481592],\n", " [30.1, 77.3, 175.35314258002893],\n", " [27.6, 47.8, 167.110113451584],\n", " [28.2, 71.7, 186.55289522981602],\n", " [25.6, 68.5, 200.54920950569996],\n", " [29.8, 53.2, 165.74710744185597],\n", " [28.7, 82.5, 181.28755758092507],\n", " [27.0, 62.6, 188.85821701359995],\n", " [26.1, 64.6, 195.29324689809596],\n", " [28.6, 80.8, 182.76629711414395],\n", " [28.7, 49.9, 165.94111864014906],\n", " [29.7, 76.9, 177.72699870042894],\n", " [27.3, 84.1, 188.978237922669],\n", " [29.9, 81.6, 174.679349352076],\n", " [25.2, 55.4, 190.14473531574401],\n", " [25.5, 63.2, 197.50426833069994],\n", " [28.9, 82.0, 180.3639532899001],\n", " [30.2, 77.8, 174.63375499977596],\n", " [28.5, 60.2, 179.12804448039995],\n", " [28.0, 88.5, 181.09301686249992],\n", " [28.5, 80.2, 183.6290450604],\n", " [28.4, 65.9, 183.56280995827598],\n", " [28.8, 74.7, 183.22846145195598],\n", " [25.9, 66.9, 197.94154690918094],\n", " [28.9, 84.0, 179.14379535590007],\n", " [28.0, 53.9, 174.66627231729998],\n", " [27.6, 43.9, 159.82193622387592],\n", " [29.1, 78.5, 180.71597298632486],\n", " [25.2, 45.3, 172.201100134676],\n", " [26.8, 90.5, 186.8623484317001],\n", " [27.3, 87.9, 186.10591939178894],\n", " [30.3, 55.1, 165.72763432882897],\n", " [30.4, 77.2, 173.69866881014403],\n", " [28.6, 82.7, 181.77737649954406],\n", " [29.8, 72.2, 177.67968671689596],\n", " [28.9, 73.6, 182.70770845503603],\n", " [31.1, 75.7, 170.24173549998898],\n", " [26.7, 85.9, 191.5928603809891],\n", " [24.1, 54.1, 193.68823748762088],\n", " [27.2, 90.8, 183.92372839561594],\n", " [30.0, 72.1, 176.58534471330006],\n", " [30.6, 71.9, 173.345822820376],\n", " [29.8, 78.9, 176.52027124498386],\n", " [30.8, 62.0, 169.20273086560007],\n", " [26.6, 97.2, 179.73274313286396],\n", " [29.5, 75.7, 179.1162660335249],\n", " [28.1, 80.1, 186.07894877982102],\n", " [31.1, 74.7, 170.44481793694902],\n", " [25.1, 94.8, 193.37990370780403],\n", " [28.7, 80.3, 182.390756081461],\n", " [28.0, 40.7, 151.7092791637],\n", " [27.0, 47.6, 169.24651333359998],\n", " [28.4, 63.2, 181.9589172101439],\n", " [27.6, 86.6, 185.28429056521605],\n", " [25.5, 52.8, 184.76632097869998],\n", " [26.1, 58.0, 188.9812241763],\n", " [28.0, 42.5, 155.5066447825],\n", " [27.8, 90.0, 180.88812392079996],\n", " [29.9, 72.7, 177.14114483262898],\n", " [30.2, 39.5, 141.9060276406],\n", " [25.8, 57.0, 189.28111718960002],\n", " [28.7, 78.7, 182.99864155874104],\n", " [27.0, 92.1, 183.7898067325999],\n", " [32.2, 69.8, 164.954635396576],\n", " [25.1, 57.0, 192.8535165124],\n", " [28.8, 52.1, 168.67875442512403],\n", " [28.3, 84.5, 182.46998169572493],\n", " [27.0, 84.2, 190.8194803384],\n", " [30.0, 78.9, 175.37478083329998],\n", " [31.2, 72.5, 170.14977037929998],\n", " [28.0, 75.6, 187.79418717679994],\n", " [25.8, 64.0, 196.5031336416],\n", " [27.9, 56.3, 178.10046408406896],\n", " [31.7, 52.1, 156.46024623934898],\n", " [26.8, 89.1, 188.2547711161641],\n", " [26.6, 55.2, 182.9785958419841],\n", " [26.7, 90.6, 187.41762829870407],\n", " [28.1, 70.6, 186.91879742865595],\n", " [23.8, 49.7, 187.3233297632559],\n", " [29.7, 53.7, 166.78778500870104],\n", " [28.2, 82.8, 184.1582931666559],\n", " [26.0, 75.0, 199.8583053999999],\n", " [29.3, 83.2, 177.26360280543588],\n", " [29.2, 71.2, 180.8930386752959],\n", " [29.0, 50.2, 165.12942162479993],\n", " [25.9, 69.5, 199.24175917952493],\n", " [26.5, 92.4, 186.7600101107001],\n", " [27.7, 87.0, 184.3225040876],\n", " [29.9, 71.4, 177.08838761953598],\n", " [28.3, 85.7, 181.59811035762087],\n", " [27.3, 86.1, 187.5853572474289],\n", " [28.6, 62.8, 180.65318336726398],\n", " [27.0, 69.1, 192.71108877660004],\n", " [28.0, 78.3, 187.28662175569997],\n", " [26.4, 64.0, 193.19135881439996],\n", " [28.3, 85.6, 181.674316677324],\n", " [27.9, 83.9, 185.34409575390097],\n", " [25.3, 43.5, 167.86727688492496],\n", " [30.6, 74.6, 173.17239742153595],\n", " [28.4, 84.4, 181.9227675586559],\n", " [28.2, 83.8, 183.55112615049603],\n", " [20.2, 51.3, 208.32669309221598],\n", " [29.1, 85.8, 176.61023367118395],\n", " [29.0, 77.6, 181.5693415072],\n", " [22.8, 56.6, 204.37415818662396],\n", " [30.1, 76.4, 175.59219063127594],\n", " [22.8, 40.7, 170.74215344947595],\n", " [29.1, 77.5, 181.01541537232495],\n", " [28.6, 81.1, 182.625537797976],\n", " [30.7, 68.8, 172.47585387879607],\n", " [29.4, 70.6, 179.71238339721592],\n", " [28.4, 58.6, 178.14501145449597],\n", " [24.8, 63.1, 201.32319012536396],\n", " [28.8, 71.9, 183.19474143768403],\n", " [27.1, 92.7, 182.427360977549],\n", " [28.6, 62.9, 180.72230001061604],\n", " [23.8, 56.6, 199.05923091318394],\n", " [28.3, 76.6, 185.889469985904],\n", " [29.7, 42.2, 148.89750149233595],\n", " [27.6, 88.7, 183.45116128320404],\n", " [23.1, 57.4, 203.95405254801602],\n", " [27.2, 90.0, 184.75901931279992],\n", " [28.0, 83.2, 185.1552452111999],\n", " [29.1, 47.3, 160.2034561413489],\n", " [27.6, 86.8, 185.12216901542396],\n", " [26.2, 48.4, 174.093522022944],\n", " [28.0, 81.5, 186.07149351249993],\n", " [29.6, 75.4, 178.59985979913597],\n", " [28.8, 55.1, 172.486235992564],\n", " [32.1, 62.4, 163.268020531196],\n", " [30.5, 71.6, 173.87127863229995],\n", " [27.3, 92.8, 180.9945696313559],\n", " [29.2, 72.6, 181.00840011046398],\n", " [29.0, 61.2, 177.45870945279998],\n", " [30.0, 71.2, 176.53057306320008],\n", " [28.3, 48.7, 165.727841395701],\n", " [25.5, 49.3, 178.80769064632497],\n", " [23.8, 67.8, 210.882395098016],\n", " [26.3, 59.9, 190.05524865706894],\n", " [29.9, 69.8, 176.879165900944],\n", " [27.6, 85.9, 185.83105498803596],\n", " [27.5, 54.7, 178.030164551325],\n", " [27.4, 34.3, 138.200262627864],\n", " [28.2, 87.0, 181.17340536560002],\n", " [29.7, 80.7, 176.31315513502093],\n", " [29.1, 49.3, 163.36878024546894],\n", " [30.0, 68.4, 176.0387681888001],\n", " [31.1, 70.8, 170.659350225244],\n", " [28.1, 81.0, 185.69589317319992],\n", " [27.7, 48.7, 168.22993046978098],\n", " [29.2, 74.5, 180.9667574541],\n", " [27.8, 90.8, 180.04190176489598],\n", " [31.0, 76.9, 170.46616010459996],\n", " [27.1, 89.6, 185.81109255271593],\n", " [31.1, 28.6, 114.19163260497601],\n", " [30.7, 75.4, 172.48712243486392],\n", " [30.4, 52.0, 161.70508340640004],\n", " [29.1, 61.9, 177.4815016902209],\n", " [29.4, 69.2, 179.43394941750392],\n", " [28.9, 80.1, 181.28722272454107],\n", " [28.5, 86.7, 179.5577916745249],\n", " [27.7, 51.1, 172.05758057430904],\n", " [29.6, 71.0, 178.67775020319993],\n", " [31.4, 73.4, 169.02426654601604],\n", " [27.8, 76.9, 188.80036945922393],\n", " [27.8, 55.5, 177.62263962220004],\n", " [29.9, 62.3, 173.77607349286907],\n", " [27.5, 38.5, 148.41090490312502],\n", " [31.0, 72.4, 171.2126372136001],\n", " [27.9, 51.7, 172.06854930654896],\n", " [28.4, 45.5, 159.81696178329997],\n", " [30.6, 74.2, 173.226227568864],\n", " [29.8, 60.9, 173.29507292722397],\n", " [29.3, 75.2, 180.32560915615593],\n", " [28.9, 83.5, 179.47270939432502],\n", " [28.6, 56.5, 175.00640713740003],\n", " [28.9, 79.0, 181.71669909240006],\n", " [27.6, 92.3, 179.63569560960403],\n", " [29.3, 47.1, 159.08850566062898],\n", " [30.7, 61.0, 169.03552400279995],\n", " [25.4, 46.4, 173.65350722857593],\n", " [27.4, 61.6, 185.9261359349759],\n", " [30.1, 69.7, 175.79578394526905],\n", " [25.5, 95.9, 189.123360738925],\n", " [31.5, 71.2, 168.59438298029997],\n", " [28.3, 81.9, 184.04014804682896],\n", " [30.9, 69.4, 171.54667274865608],\n", " [27.8, 85.6, 184.7953886965439],\n", " [30.0, 52.4, 163.89656476480005],\n", " [27.6, 50.1, 170.94060912443598],\n", " [22.9, 55.0, 201.29961528119992],\n", " [29.4, 63.0, 176.71828502479994],\n", " [29.4, 72.3, 179.8846647377839],\n", " [26.9, 64.9, 191.0894161037011],\n", " [25.4, 64.4, 199.05854670601607],\n", " [28.2, 44.8, 159.28768250553594],\n", " [28.4, 79.6, 184.46590456281592],\n", " [29.3, 44.8, 155.14510470111588],\n", " [29.8, 75.4, 177.4750437800639],\n", " [28.5, 80.4, 183.54425722909994],\n", " [28.7, 44.0, 155.89935252909999],\n", " [29.7, 39.2, 142.871366792956],\n", " [26.7, 66.2, 193.00709167009603],\n", " [32.2, 56.1, 158.429648171864],\n", " [29.2, 63.2, 177.85663968841595],\n", " [29.3, 55.3, 170.4321707858609],\n", " [27.8, 77.9, 188.59140662994398],\n", " [29.8, 57.6, 170.51282382022396],\n", " [32.1, 72.3, 165.46774227038904],\n", " [28.0, 62.6, 183.6051033687999],\n", " [29.1, 73.7, 181.57535729854897],\n", " [29.1, 84.9, 177.29892780706098],\n", " [25.7, 49.9, 178.987510903029],\n", " [28.8, 53.3, 170.27066517763606],\n", " [29.3, 86.9, 174.48214748458904],\n", " [21.2, 57.9, 215.22089103168406],\n", " [32.3, 51.3, 153.136084520821],\n", " [28.9, 70.1, 182.35843949034108],\n", " [29.2, 49.7, 163.55745541915593],\n", " [26.8, 49.3, 173.08631045019598],\n", " [25.2, 53.1, 186.67910261824392],\n", " [30.1, 82.6, 172.92839002113598],\n", " [28.4, 37.8, 143.88649185654396],\n", " [27.2, 65.9, 190.06353128568398],\n", " [30.3, 69.7, 174.736295845341],\n", " [28.9, 66.1, 181.00429276226103],\n", " [28.4, 78.1, 184.95632468763588],\n", " [31.7, 72.1, 167.54716483494894],\n", " [31.7, 43.0, 143.52899257320004],\n", " [29.4, 74.7, 179.81827636402394],\n", " [32.3, 68.4, 164.29896655452407],\n", " [27.7, 52.5, 174.11630094492503],\n", " [28.3, 83.3, 183.24889776474092],\n", " [29.6, 78.9, 177.67197938371584],\n", " [28.4, 83.9, 182.25691225651588],\n", " [28.3, 39.7, 148.505185770861],\n", " [30.0, 46.8, 155.89418253920002],\n", " [31.4, 73.3, 169.03462656818405],\n", " [27.9, 87.1, 182.97358875710103],\n", " [31.2, 70.7, 170.131567954036],\n", " [29.0, 48.2, 162.06199944879998],\n", " [28.8, 80.7, 181.61605333451584],\n", " [29.5, 68.5, 178.7144517131249],\n", " [29.8, 71.1, 177.60259704850404],\n", " [28.5, 84.5, 181.2396869181249],\n", " [30.7, 52.5, 161.05912658892507],\n", " [26.2, 49.1, 175.35272675826405],\n", " [26.9, 61.8, 188.71678583790404],\n", " [24.3, 32.0, 140.29390316109996],\n", " [29.2, 69.8, 180.653759848096],\n", " [27.6, 63.6, 186.42872851385604],\n", " [25.1, 59.5, 195.94752625252494],\n", " [29.3, 76.2, 180.163623936016],\n", " [30.8, 52.6, 160.75881027398404],\n", " [31.0, 70.0, 171.10912050000005],\n", " [28.5, 86.1, 180.04733342772496],\n", " [28.5, 82.3, 182.61058140352498],\n", " [31.7, 70.6, 167.54211051230396],\n", " [23.3, 50.4, 191.04647481612395],\n", " [31.0, 71.2, 171.20449953840003],\n", " [31.7, 72.0, 167.5509974311],\n", " [29.4, 83.3, 176.60385827874384],\n", " [24.7, 73.9, 207.83799677766896],\n", " [26.8, 52.9, 178.80983301128404],\n", " [26.0, 45.3, 168.9277951068999],\n", " [30.1, 75.5, 175.781099280925],\n", " [25.0, 70.2, 204.89763572719997],\n", " [28.7, 78.8, 182.96544577327612],\n", " [30.9, 81.4, 169.05720881601601],\n", " [27.1, 48.2, 169.89630538494396],\n", " [25.8, 94.3, 189.1805488072559],\n", " [28.7, 80.2, 182.4335459806561],\n", " [26.9, 51.3, 175.92289046374898],\n", " [30.6, 73.9, 173.26017749013587],\n", " [28.8, 55.9, 173.40456853016397],\n", " [26.3, 48.9, 174.560680148749],\n", " [28.2, 77.2, 186.36276604089596],\n", " [30.8, 68.4, 171.87388174278414],\n", " [28.7, 62.6, 180.00204054174395],\n", " [28.7, 87.7, 177.44939250098096],\n", " [31.8, 75.1, 166.624466829144],\n", " [23.6, 47.5, 183.76241383769997],\n", " [27.8, 88.5, 182.36215925979985],\n", " [28.4, 63.4, 182.0938251485759],\n", " [29.8, 69.9, 177.43246910770407],\n", " [29.5, 52.8, 166.55234702989992],\n", " [29.6, 67.0, 177.69629984640008],\n", " [24.6, 55.5, 193.31572119979998],\n", " [29.4, 43.4, 152.2223948186559],\n", " [26.6, 94.0, 184.14439772640003],\n", " [25.7, 64.8, 197.67708393343597],\n", " [27.5, 80.3, 189.66285210332498],\n", " [30.6, 45.3, 151.217643550424],\n", " [28.0, 48.9, 167.30287474729997],\n", " [29.3, 51.9, 166.24339904638896],\n", " [28.5, 73.5, 184.98415176312486],\n", " [26.9, 91.9, 184.6781066762611],\n", " [26.9, 91.4, 185.23827554929593],\n", " [26.5, 92.8, 186.28989525029996],\n", " [24.4, 49.7, 184.540649659924],\n", " [29.5, 32.1, 126.86463756972496],\n", " [31.2, 74.0, 170.0157147256],\n", " [31.4, 49.3, 154.168637188344],\n", " [28.5, 75.2, 184.9134082278999],\n", " [24.6, 52.8, 189.09595413334395],\n", " [29.4, 60.2, 174.69895461654397],\n", " [26.5, 88.7, 190.59863427092503],\n", " [27.6, 67.8, 188.809256374784],\n", " [31.1, 74.3, 170.50912815082893],\n", " [28.5, 81.2, 183.17940336189992],\n", " [23.0, 58.8, 206.4704475111999],\n", " [29.3, 71.0, 180.31715849079993],\n", " [31.4, 71.9, 169.11666544549604],\n", " [29.6, 83.7, 175.1517781761639],\n", " [29.0, 58.3, 174.95427928379993],\n", " [28.7, 43.1, 154.171837778509],\n", " [28.3, 62.1, 181.68245728106893],\n", " [30.7, 77.5, 171.93326915392498],\n", " [29.6, 75.3, 178.61509645584397],\n", " [28.8, 86.3, 178.03849027915604],\n", " [30.0, 68.6, 176.09002936480002],\n", " [30.4, 75.6, 174.09755577449593],\n", " [29.9, 67.6, 176.33151568719597],\n", " [28.8, 75.1, 183.19243822616397],\n", " [28.4, 82.8, 182.9353548317439],\n", " [24.0, 64.4, 207.0731498152],\n", " [26.8, 44.7, 164.513416079876],\n", " [28.3, 70.6, 185.79472003262393],\n", " [30.4, 84.8, 169.65527774310402],\n", " [30.2, 74.2, 175.41467007273607],\n", " [24.7, 58.7, 197.12284616370096],\n", " [24.1, 66.1, 207.8830852046609],\n", " [29.1, 71.7, 181.50251456066903],\n", " [29.2, 80.5, 179.33686545569998],\n", " [31.1, 72.1, 170.68998041222096],\n", " [28.6, 51.7, 168.99625055090394],\n", " [26.5, 57.2, 186.0065924083001],\n", " [31.2, 73.3, 170.09515597635612],\n", " [31.0, 72.7, 171.20104016940004],\n", " [27.1, 87.5, 187.74111172832497],\n", " [29.6, 77.9, 178.01538121483594],\n", " [28.7, 84.2, 180.22305609889605],\n", " [30.5, 74.1, 173.78265278792495],\n", " [28.1, 80.2, 186.03898098590395],\n", " [24.3, 44.1, 173.24684915078893],\n", " [30.2, 59.9, 170.61306139458404],\n", " [27.3, 87.2, 186.70668043519595],\n", " [25.5, 50.4, 180.77112467629993],\n", " [30.0, 54.7, 166.61955919770006],\n", " [28.0, 84.5, 184.32784110250006],\n", " [23.6, 60.9, 205.77666346555594],\n", " [28.7, 87.1, 177.98052354882898],\n", " [28.3, 65.2, 183.722526197916],\n", " [27.9, 84.1, 185.215482583341],\n", " [24.4, 42.5, 169.08919424769996],\n", " [30.0, 71.0, 176.51157639999997],\n", " [29.0, 81.0, 180.28353117999993],\n", " [28.6, 82.3, 182.004802868184],\n", " [27.5, 87.4, 185.25778012680013],\n", " [27.5, 84.1, 187.7173921979251],\n", " [26.1, 51.4, 179.71459845009602],\n", " [30.8, 45.0, 149.99920714479995],\n", " [29.2, 75.2, 180.893882347936],\n", " [30.7, 72.8, 172.79999927815592],\n", " [31.0, 77.6, 170.2397780536],\n", " [26.1, 60.5, 191.71976217692503],\n", " [30.9, 67.9, 171.24296238626104],\n", " [27.0, 55.8, 181.82113743440001],\n", " [25.9, 61.3, 193.5768688156289],\n", " [29.0, 72.7, 182.13078337980005],\n", " [27.2, 92.5, 182.0080910192999],\n", " [27.5, 68.5, 189.65338892812505],\n", " [28.9, 65.6, 180.76340075647596],\n", " [26.5, 47.3, 170.78596916492498],\n", " [26.5, 91.4, 187.88823637719992],\n", " [27.3, 48.6, 169.74624325630398],\n", " [31.2, 71.2, 170.15621929881604],\n", " [30.5, 74.5, 173.732910118125],\n", " [29.4, 67.4, 178.89472828297596],\n", " [28.5, 83.9, 181.6444102827249],\n", " [29.5, 63.5, 176.5205765631249],\n", " [31.8, 70.8, 167.03730354185603],\n", " [26.9, 90.3, 186.41201038918905],\n", " [29.4, 85.7, 174.8761528374639],\n", " [27.6, 85.0, 186.4868126711999],\n", " [23.6, 66.5, 211.16763814689995],\n", " [30.1, 54.5, 165.95494876352507],\n", " [30.6, 72.5, 173.34581997819993],\n", " [30.4, 77.7, 173.5417495873641],\n", " [28.9, 76.2, 182.46229814542406],\n", " [25.7, 85.4, 198.49560920286393],\n", " [28.1, 62.9, 183.30524893818097],\n", " [28.3, 86.7, 180.80054341198098],\n", " [27.8, 85.8, 184.64520900169597],\n", " [29.5, 74.5, 179.27531057812493],\n", " [28.4, 47.2, 162.819488380704],\n", " [27.0, 56.8, 183.0488041704],\n", " [30.8, 74.0, 172.1656979296],\n", " [25.2, 69.8, 203.52444593065587],\n", " [31.0, 33.6, 126.75692184559998],\n", " [24.6, 39.2, 160.07270585238402],\n", " [29.3, 73.9, 180.44189150442895],\n", " [28.3, 84.8, 182.26072841767592],\n", " [29.1, 69.1, 181.02886329302098],\n", " [27.8, 59.2, 181.69327183113592],\n", " [28.2, 88.5, 179.83078002379986],\n", " [28.5, 75.0, 184.93136944999992],\n", " [28.1, 83.0, 184.65659783079994],\n", " [28.0, 89.2, 180.42000298320008],\n", " [29.1, 66.5, 180.12682731152498],\n", " [30.6, 70.6, 173.27028591945594],\n", " [26.5, 93.4, 185.56455400920004],\n", " [27.6, 90.8, 181.32877798086398],\n", " [25.9, 56.8, 188.52132740948394],\n", " [31.2, 72.2, 170.16030249097602],\n", " [25.1, 64.5, 200.83560418652493],\n", " [27.1, 54.8, 180.051293353564],\n", " [28.3, 71.8, 185.9995805614559],\n", " [23.4, 34.8, 151.66479693766397],\n", " [30.1, 67.0, 175.0923117204001],\n", " [28.5, 55.2, 173.98677214789996],\n", " [26.1, 67.8, 197.2900729948639],\n", " [28.8, 88.4, 176.180975388064],\n", " [28.9, 59.0, 176.09194408840003],\n", " [30.5, 70.2, 173.75351993320004],\n", " [32.0, 69.9, 165.97039336210014],\n", " [25.9, 92.9, 190.21910530386086],\n", " [27.6, 82.7, 187.92126489216406],\n", " [26.9, 89.5, 187.21499495752505],\n", " [28.2, 49.6, 167.584556990784],\n", " [27.2, 92.9, 181.5295549051239],\n", " [28.5, 49.6, 166.32141851909995],\n", " [31.3, 71.7, 169.64158094770107],\n", " [31.0, 64.3, 169.46468020140006],\n", " [25.2, 61.2, 197.2591264242559],\n", " [26.8, 68.8, 193.73587838217605],\n", " [27.4, 58.0, 182.44338895679996],\n", " [30.3, 71.9, 174.955259783149],\n", " [29.1, 86.2, 176.28767105342394],\n", " [29.3, 69.7, 180.08904654410097],\n", " [28.3, 83.0, 183.4291025211999],\n", " [25.9, 36.4, 148.29970129551597],\n", " [25.9, 59.0, 191.16528949239998],\n", " [27.2, 62.7, 187.876882395316],\n", " [27.1, 46.2, 166.24856005246397],\n", " [27.4, 63.6, 187.49202352601597],\n", " [30.1, 70.9, 175.963591107261],\n", " [28.3, 82.6, 183.660338211984],\n", " [28.8, 85.4, 178.74842043270388],\n", " [29.3, 85.3, 175.79090645006096],\n", " [29.2, 68.5, 180.32061572129993],\n", " [29.6, 44.1, 152.78575343875593],\n", " [27.4, 91.6, 181.74156170457596],\n", " [28.5, 75.5, 184.88164716812497],\n", " [30.6, 46.5, 153.1481147414],\n", " [25.1, 37.3, 153.312281471229],\n", " [24.8, 68.8, 205.44415830009598],\n", " [28.7, 57.2, 175.284047379676],\n", " [27.4, 92.7, 180.46111600450394],\n", " [31.1, 57.3, 164.30346817750905],\n", " [31.8, 68.1, 166.735010209784],\n", " [24.8, 35.5, 149.3012577956999],\n", " [27.2, 54.7, 179.44514998443594],\n", " [28.4, 56.9, 176.39063966395588],\n", " [29.6, 52.3, 165.48066917336394],\n", " [28.7, 81.2, 181.976864647516],\n", " [26.2, 82.2, 197.03638825577596],\n", " [30.9, 72.9, 171.72394094266102],\n", " [24.9, 67.3, 203.99028197706897],\n", " [30.9, 73.9, 171.63794603054106],\n", " [25.7, 93.6, 190.74143491020396],\n", " [25.9, 63.7, 195.70905699858895],\n", " [24.8, 55.1, 191.71530361272397],\n", " [28.6, 65.8, 182.44781061974402],\n", " [31.7, 73.3, 167.45471297006102],\n", " [29.3, 81.3, 178.356354027901],\n", " [29.0, 84.1, 178.47123125820005],\n", " [30.8, 72.2, 172.28009652553607],\n", " [29.3, 52.3, 166.77404124854095],\n", " [28.7, 60.3, 178.220545038661],\n", " [29.5, 69.8, 179.02776878439997],\n", " [29.6, 55.0, 168.7390355471999],\n", " [24.2, 57.0, 197.52829952560003],\n", " [31.6, 71.8, 168.0758363341439],\n", " [30.3, 72.6, 174.962398569104],\n", " [30.3, 56.5, 167.16073138672496],\n", " [26.3, 95.4, 184.32375295950385],\n", " [30.4, 76.4, 173.91777982537593],\n", " [24.1, 65.2, 207.17231762468398],\n", " [28.2, 83.6, 183.6777355815039],\n", " [30.0, 74.9, 176.43434121730007],\n", " [28.2, 83.7, 183.61475436773597],\n", " [29.6, 61.1, 174.41941962379607],\n", " [31.1, 69.2, 170.48143437180406],\n", " [26.0, 56.4, 187.5050703136],\n", " [28.6, 54.3, 172.43510239330396],\n", " [30.4, 75.7, 174.07723491728396],\n", " [30.7, 74.9, 172.5793277672291],\n", " [28.2, 41.4, 152.50880690518395],\n", " [31.7, 72.8, 167.50365845791595],\n", " [29.7, 65.4, 176.508393577424],\n", " [27.1, 44.9, 163.735238195821],\n", " [31.0, 49.5, 156.004270115],\n", " [26.5, 68.4, 195.28200604670008],\n", " [26.8, 90.1, 187.27353984104403],\n", " [28.6, 68.2, 183.46808923286397],\n", " [30.3, 75.0, 174.75769470679995],\n", " [28.5, 72.9, 184.96478318472487],\n", " [31.1, 70.0, 170.5897325967],\n", " [24.9, 44.7, 172.138153956509],\n", " [31.0, 66.8, 170.4282630664],\n", " [29.9, 70.9, 177.040109145021],\n", " [29.5, 38.3, 141.573808498525],\n", " [30.0, 75.3, 176.3730591197],\n", " [27.2, 44.5, 162.5513534961],\n", " [31.8, 69.2, 166.91045610889608],\n", " [26.3, 72.1, 197.6834389619489],\n", " [30.9, 71.3, 171.73521396982915],\n", " [28.2, 84.2, 183.29014324681603],\n", " [27.6, 60.4, 183.83840170809603],\n", " [26.1, 75.6, 199.2475003135159],\n", " [24.4, 57.3, 196.89199617928406],\n", " [30.4, 67.5, 173.70242404369998],\n", " [26.3, 56.1, 185.626375355869],\n", " [29.3, 71.6, 180.38648767716396],\n", " [30.9, 67.0, 170.99514754440014],\n", " [27.3, 78.7, 191.41960403426094],\n", " [29.1, 80.6, 179.88087293377595],\n", " [24.3, 74.1, 210.40397591018902],\n", " [31.7, 74.8, 167.21852898519603],\n", " [28.6, 43.0, 154.33806908879993],\n", " [23.2, 41.5, 171.2996925141],\n", " [29.6, 64.2, 176.41300403478397],\n", " [24.1, 69.7, 210.1523512021889],\n", " [27.7, 86.4, 184.81054929196404],\n", " [29.4, 75.8, 179.66671065654393],\n", " [30.9, 72.5, 171.74133444932505],\n", " [27.0, 50.3, 173.8805781814001],\n", " [28.1, 84.6, 183.63839786593596],\n", " [26.4, 89.2, 190.79517308534412],\n", " [27.1, 54.6, 179.78602049201604],\n", " [26.8, 51.0, 175.89693757279994],\n", " [30.1, 70.2, 175.8765361828641],\n", " [28.3, 76.7, 185.87136070938098],\n", " [26.6, 60.1, 188.69718642021593],\n", " [28.9, 55.3, 172.25995145082894],\n", " [31.2, 70.1, 170.08208976144408],\n", " [31.7, 71.3, 167.56114740018106],\n", " [28.3, 72.1, 186.03627143286892],\n", " [30.9, 75.4, 171.395084522736],\n", " [27.9, 87.9, 182.276729918621],\n", " [27.3, 84.8, 188.52077634943598],\n", " [30.0, 58.5, 170.39929321249994],\n", " [28.2, 85.4, 182.44508220246388],\n", " [26.5, 95.4, 182.97195230119993],\n", " [23.7, 58.2, 201.83491319633598],\n", " [30.3, 72.4, 174.96343928828406],\n", " [28.6, 83.5, 181.2917516742],\n", " [29.5, 87.1, 173.09637157972494],\n", " [28.5, 81.8, 182.87877529239995],\n", " [29.5, 76.3, 179.00284172152493],\n", " [31.1, 70.9, 170.66533269938105],\n", " [28.4, 84.7, 181.71455222720394],\n", " [26.6, 64.5, 192.45978226540004],\n", " [30.8, 73.3, 172.2336236153161],\n", " [28.9, 77.9, 182.06914022970102],\n", " [22.4, 60.4, 211.9655986906561],\n", " [27.2, 89.3, 185.45515148035594],\n", " [27.1, 90.0, 185.41030262869995],\n", " [28.4, 52.4, 170.848274730496],\n", " [30.9, 71.9, 171.74920564698107],\n", " [29.3, 34.8, 134.12071662871597],\n", " [23.9, 55.9, 197.50370706014095],\n", " [27.1, 63.5, 189.02252468432496],\n", " [31.3, 73.6, 169.53250869644395],\n", " [24.9, 33.3, 142.576558138229],\n", " [29.8, 65.1, 175.85425173682404],\n", " [31.8, 73.9, 166.85019775970403],\n", " [27.2, 91.8, 182.82004780345596],\n", " [29.9, 65.1, 175.34379694902103],\n", " [24.0, 58.3, 200.35320926129998],\n", " [24.8, 49.0, 181.38830116559996],\n", " [29.1, 72.7, 181.57062118950898],\n", " [29.2, 81.5, 178.8439357320999],\n", " [30.6, 52.9, 161.956343932056],\n", " [27.9, 56.2, 177.98399313950398],\n", " [29.4, 51.0, 164.5903488871999],\n", " [25.7, 53.2, 184.43652695415597],\n", " [28.3, 74.4, 186.124556825804],\n", " [26.3, 97.2, 181.76619558895584],\n", " [28.3, 77.0, 185.8131597436],\n", " [31.2, 32.5, 123.68167735529998],\n", " [27.4, 91.1, 182.29722734581597],\n", " [28.4, 82.1, 183.32651632411597],\n", " [23.7, 64.4, 208.82322505476395],\n", " [30.0, 72.4, 176.59243344480006],\n", " [28.2, 54.0, 173.88049024159997],\n", " [26.0, 98.2, 182.30538171839993],\n", " [28.5, 80.5, 183.5008994681249],\n", " [24.0, 64.2, 206.89470885679995],\n", " [25.1, 54.8, 189.772350725404],\n", " [28.4, 55.1, 174.33019607347592],\n", " [29.8, 75.9, 177.385403204024],\n", " [24.4, 48.6, 182.41615653017595],\n", " [29.3, 84.3, 176.526882161821],\n", " [27.6, 58.2, 181.667944573184],\n", " [30.0, 79.7, 175.0437382477],\n", " [30.3, 71.5, 174.93762683872498],\n", " [28.3, 45.8, 160.749283857616],\n", " [31.2, 72.4, 170.1538840098241],\n", " [28.7, 75.3, 183.74673175326103],\n", " [23.1, 64.5, 212.45232576552505],\n", " [25.8, 94.8, 188.533972894976],\n", " [31.0, 77.1, 170.4045087326],\n", " [28.9, 57.4, 174.541824197136],\n", " [31.8, 71.3, 167.04574800997614],\n", " [27.9, 79.7, 187.443032020069],\n", " [30.1, 73.4, 176.0268995683361],\n", " [29.3, 69.0, 179.9220639196],\n", " [25.2, 70.8, 203.92090903289593],\n", " [29.7, 74.0, 178.19891802909993],\n", " [28.2, 87.4, 180.82960601750403],\n", " [31.8, 69.3, 166.92284055269602],\n", " [28.2, 75.4, 186.64044229526388],\n", " [31.3, 71.4, 169.638954380624],\n", " [25.6, 66.7, 199.54306801016406],\n", " [27.4, 92.3, 180.935956918744],\n", " [27.6, 54.8, 177.68918035110408],\n", " [29.3, 71.7, 180.39583488582102],\n", " [28.2, 82.5, 184.32782670379993],\n", " [28.5, 71.3, 184.80004245752502],\n", " [27.2, 51.3, 174.57898881283592],\n", " [26.0, 57.0, 188.27064393999999],\n", " [31.8, 69.1, 166.89747746786412],\n", " [26.3, 50.1, 176.64806684638907],\n", " [27.0, 90.4, 185.6528892456],\n", " [26.1, 90.2, 191.82011064414402],\n", " [28.2, 86.8, 181.3414230188159],\n", " [25.5, 75.5, 202.97449634312503],\n", " [29.1, 66.8, 180.25277121564392],\n", " [26.3, 47.6, 172.18961004156404],\n", " [31.1, 58.9, 165.63213177242105],\n", " [31.0, 73.8, 171.11186777840012],\n", " [25.8, 53.3, 184.11220113781596],\n", " [30.0, 69.7, 176.3276021277],\n", " [28.2, 78.7, 185.97123580293592],\n", " [29.1, 79.4, 180.39229304449594],\n", " [27.3, 91.6, 182.39293005764398],\n", " [29.7, 62.9, 175.14994729174904],\n", " [30.6, 79.6, 171.67374625113592],\n", " [29.2, 86.6, 175.346557900384],\n", " [24.8, 94.3, 196.12065879531596],\n", " [27.3, 46.0, 165.06690890430002],\n", " [27.6, 38.9, 149.01873106747595],\n", " [25.6, 94.6, 190.16924913033606],\n", " [28.1, 84.8, 183.49945013964404],\n", " [31.8, 69.4, 166.93463079926406],\n", " [29.9, 73.4, 177.12601685809602],\n", " [28.1, 83.6, 184.29422739511594],\n", " [29.6, 65.6, 177.11603376313585],\n", " [26.2, 96.5, 183.46729868859995],\n", " [29.7, 78.0, 177.41052220670002],\n", " [28.4, 82.6, 183.05033547177598],\n", " [30.7, 70.7, 172.75156243638105],\n", " [31.2, 73.4, 170.08561600614408],\n", " [30.3, 68.0, 174.3628677547],\n", " [31.6, 70.3, 168.03742420160387],\n", " [26.1, 95.2, 185.95289480684403],\n", " [25.6, 59.4, 193.18477741577595],\n", " [28.3, 78.6, 185.404635142064],\n", " [29.6, 84.1, 174.87662151555594],\n", " [29.9, 64.5, 175.0489041585251],\n", " [28.9, 59.4, 176.45400786929594],\n", " [30.5, 72.9, 173.87301867092492],\n", " [27.6, 76.7, 190.03011119232403],\n", " [28.1, 86.7, 182.05007397478897],\n", " [26.6, 70.4, 195.46684313977602],\n", " [28.9, 78.2, 181.98065977710397],\n", " [28.8, 76.6, 182.966417491584],\n", " [31.6, 71.7, 168.07745525224402],\n", " [25.3, 48.7, 178.585918209381],\n", " [31.5, 67.1, 168.00512224832497],\n", " [27.5, 87.6, 185.0857040383001],\n", " [31.1, 79.0, 169.14275278440005],\n", " [28.0, 81.2, 186.2136853672],\n", " [28.9, 71.0, 182.52274012119992],\n", " [31.2, 74.8, 169.88874912681607],\n", " [23.6, 58.8, 203.17617864102388],\n", " [30.0, 74.0, 176.53592835999999],\n", " [30.5, 73.5, 173.8388723781249],\n", " [27.3, 88.2, 185.8385448798559],\n", " [28.1, 53.1, 173.1454280221809],\n", " [31.2, 60.1, 166.06194206864396],\n", " [28.3, 74.0, 186.13373270709994],\n", " [25.0, 66.9, 203.15029583179992],\n", " [28.7, 84.7, 179.87478901070108],\n", " [26.7, 95.8, 181.07541725553602],\n", " [31.7, 46.8, 149.52867643447598],\n", " [23.3, 53.3, 196.37557325034106],\n", " [26.7, 48.9, 172.827746925749],\n", " [26.8, 94.9, 181.63402729832407],\n", " [31.3, 70.3, 169.583010464541],\n", " [28.3, 82.9, 183.48787972794895],\n", " [28.3, 80.7, 184.6176610328209],\n", " [26.8, 44.8, 164.71480925001597],\n", " [28.6, 69.5, 183.86655916540005],\n", " [23.3, 91.2, 210.312392199676],\n", " [27.8, 89.1, 181.79017435602407],\n", " [27.1, 82.4, 191.21040069319605],\n", " [27.7, 69.8, 188.97064389505607],\n", " [26.8, 62.4, 189.75807664342403],\n", " [26.9, 59.8, 186.84623041598405],\n", " [28.1, 79.6, 186.2690604738359],\n", " [30.5, 73.6, 173.83103531429995],\n", " [27.7, 71.3, 189.3358615463411],\n", " [26.3, 59.0, 189.09443023959994],\n", " [29.1, 84.2, 177.799091310544],\n", " [29.6, 82.8, 175.73423947254398],\n", " [26.0, 71.6, 199.35674332959994],\n", " [30.6, 48.7, 156.45854185154394],\n", " [26.7, 87.6, 190.25334424156406],\n", " [29.6, 80.4, 177.03943692553605],\n", " [30.6, 73.1, 173.3237964872559],\n", " [28.2, 61.6, 181.80494820614396],\n", " [29.1, 86.0, 176.45021977269997],\n", " [27.3, 56.6, 181.3442423273439],\n", " [25.3, 58.7, 193.95247031598092],\n", " [26.8, 70.1, 194.20962653544404],\n", " [29.0, 64.4, 179.6022833152],\n", " [28.2, 85.2, 182.59239574457595],\n", " [27.9, 80.7, 187.04751737930894],\n", " [28.5, 79.7, 183.82976977652493],\n", " [28.9, 83.7, 179.34305374334897],\n", " [27.9, 87.2, 182.88876147924404],\n", " [27.5, 59.1, 183.09560504792503],\n", " ...]" ] }, "metadata": {}, "execution_count": 45 } ], "source": [ "X_train.values.tolist()" ] }, { "cell_type": "code", "execution_count": 46, "id": "Sc6NkbVfjYJt", "metadata": { "id": "Sc6NkbVfjYJt" }, "outputs": [], "source": [ "# Convert to Pandas Series if y_train is a NumPy array\n", "if isinstance(y_train, np.ndarray):\n", " y_train = pd.Series(y_train)" ] }, { "cell_type": "code", "execution_count": 47, "id": "437734ae-7a8b-4634-9679-1c440212bd7f", "metadata": { "id": "437734ae-7a8b-4634-9679-1c440212bd7f", "outputId": "4e5bac10-6bf3-4e11-c906-5bbc2132317e", "colab": { "base_uri": "https://localhost:8080/" } }, "outputs": [ { "output_type": "stream", "name": "stdout", "text": [ "[3, 2, 1, 2, 2, 1, 1, 2, 2, 2, 1, 2, 2, 2, 1, 2, 2, 3, 3, 1, 2, 2, 3, 3, 3, 2, 2, 2, 2, 1, 2, 1, 2, 1, 2, 3, 1, 1, 2, 2, 2, 3, 2, 2, 2, 2, 1, 2, 2, 2, 2, 1, 2, 1, 2, 2, 3, 2, 1, 1, 2, 1, 2, 1, 1, 2, 3, 3, 1, 3, 3, 2, 2, 1, 2, 1, 2, 2, 2, 2, 2, 1, 3, 3, 2, 2, 1, 2, 2, 2, 2, 2, 1, 2, 1, 2, 2, 1, 2, 1, 1, 2, 2, 2, 1, 1, 2, 2, 2, 2, 3, 2, 1, 2, 1, 2, 1, 2, 2, 1, 2, 2, 1, 1, 2, 1, 3, 2, 2, 2, 2, 3, 1, 2, 2, 2, 2, 3, 2, 1, 1, 3, 2, 2, 3, 2, 2, 2, 2, 2, 3, 2, 1, 1, 1, 2, 2, 2, 2, 2, 1, 2, 2, 1, 2, 2, 3, 2, 1, 1, 2, 2, 1, 3, 2, 1, 2, 1, 2, 1, 2, 2, 2, 2, 2, 1, 2, 2, 1, 2, 1, 2, 3, 2, 2, 1, 2, 2, 2, 2, 1, 1, 1, 2, 2, 2, 1, 2, 2, 2, 2, 1, 2, 2, 1, 2, 2, 2, 1, 2, 2, 3, 3, 1, 3, 1, 2, 2, 2, 3, 1, 2, 1, 2, 1, 2, 2, 3, 2, 2, 2, 3, 3, 1, 2, 2, 2, 1, 1, 1, 2, 2, 2, 1, 1, 1, 2, 1, 2, 2, 2, 1, 2, 2, 1, 2, 2, 3, 2, 2, 2, 1, 2, 2, 1, 3, 2, 1, 1, 2, 2, 1, 2, 2, 1, 1, 2, 2, 2, 1, 2, 3, 2, 3, 1, 1, 2, 2, 1, 2, 2, 2, 1, 2, 1, 2, 2, 2, 2, 1, 2, 1, 2, 1, 1, 3, 3, 2, 1, 2, 2, 3, 1, 2, 3, 2, 2, 1, 2, 2, 2, 1, 1, 2, 2, 2, 2, 2, 2, 1, 2, 1, 2, 3, 2, 1, 2, 1, 2, 2, 2, 1, 1, 2, 1, 1, 2, 2, 2, 2, 1, 1, 3, 2, 1, 1, 2, 1, 2, 2, 2, 3, 2, 1, 2, 2, 2, 2, 2, 1, 2, 2, 2, 3, 1, 2, 1, 1, 3, 1, 3, 1, 2, 2, 2, 2, 1, 2, 2, 2, 3, 3, 2, 2, 2, 1, 2, 3, 1, 1, 3, 2, 2, 1, 3, 2, 1, 2, 1, 3, 2, 2, 2, 2, 1, 1, 2, 2, 2, 2, 2, 2, 3, 2, 2, 3, 2, 2, 2, 1, 2, 2, 1, 3, 2, 3, 2, 2, 1, 2, 1, 2, 1, 2, 2, 2, 2, 2, 2, 2, 3, 2, 3, 2, 1, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 3, 2, 1, 2, 2, 2, 3, 3, 2, 1, 3, 2, 2, 2, 2, 2, 3, 2, 2, 2, 1, 2, 1, 3, 3, 2, 1, 2, 3, 1, 2, 2, 1, 2, 3, 2, 3, 2, 2, 2, 2, 2, 2, 1, 1, 2, 2, 2, 2, 1, 2, 2, 3, 2, 2, 2, 1, 3, 1, 1, 2, 2, 2, 3, 2, 2, 2, 1, 2, 3, 1, 2, 2, 2, 2, 2, 3, 1, 2, 1, 3, 3, 2, 2, 1, 1, 1, 3, 3, 2, 3, 2, 2, 2, 1, 2, 2, 1, 2, 2, 2, 1, 2, 3, 2, 2, 2, 1, 2, 2, 2, 2, 1, 2, 3, 2, 1, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2, 1, 2, 1, 2, 1, 3, 2, 1, 2, 2, 1, 2, 1, 2, 1, 3, 2, 1, 1, 1, 1, 2, 3, 2, 2, 2, 2, 2, 2, 2, 2, 1, 2, 2, 3, 1, 3, 2, 2, 2, 1, 2, 2, 1, 1, 1, 2, 2, 2, 2, 2, 1, 2, 1, 1, 2, 3, 2, 2, 2, 3, 3, 2, 1, 2, 2, 1, 2, 1, 1, 2, 2, 1, 1, 2, 2, 2, 2, 2, 3, 2, 2, 2, 1, 2, 2, 2, 1, 1, 1, 3, 1, 3, 2, 2, 2, 2, 2, 2, 1, 2, 1, 3, 2, 2, 3, 2, 2, 1, 1, 1, 2, 3, 1, 2, 3, 3, 2, 2, 1, 2, 2, 3, 2, 2, 2, 1, 1, 2, 2, 2, 1, 2, 2, 2, 2, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 2, 2, 1, 2, 1, 2, 2, 2, 2, 2, 2, 3, 2, 2, 3, 3, 2, 1, 2, 2, 2, 2, 3, 2, 2, 3, 2, 3, 2, 2, 2, 1, 2, 2, 2, 2, 2, 2, 2, 2, 1, 2, 2, 3, 3, 2, 2, 1, 2, 2, 2, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 2, 1, 1, 2, 2, 1, 1, 1, 2, 2, 1, 2, 2, 2, 2, 1, 1, 2, 2, 3, 2, 2, 2, 3, 2, 2, 1, 2, 2, 3, 2, 1, 2, 2, 2, 2, 2, 1, 2, 3, 1, 1, 2, 2, 2, 1, 1, 2, 2, 2, 2, 3, 1, 2, 2, 2, 3, 2, 2, 2, 1, 2, 2, 2, 2, 2, 2, 2, 2, 1, 2, 2, 2, 2, 1, 2, 2, 1, 2, 2, 2, 2, 2, 1, 1, 1, 2, 2, 3, 2, 2, 2, 2, 2, 2, 1, 2, 2, 1, 1, 3, 3, 1, 1, 2, 2, 1, 2, 1, 2, 1, 2, 2, 2, 2, 1, 2, 2, 1, 2, 2, 2, 2, 1, 2, 2, 2, 2, 3, 2, 1, 2, 1, 2, 2, 2, 2, 2, 1, 2, 2, 2, 2, 1, 1, 3, 2, 3, 1, 2, 1, 1, 3, 2, 0, 1, 1, 2, 2, 2, 2, 2, 2, 2, 1, 1, 2, 3, 1, 1, 2, 2, 1, 2, 2, 2, 2, 1, 1, 2, 1, 1, 2, 2, 1, 2, 1, 2, 2, 2, 3, 1, 3, 1, 2, 1, 2, 1, 3, 1, 2, 1, 3, 1, 2, 2, 1, 2, 2, 2, 2, 1, 1, 2, 2, 3, 1, 3, 1, 3, 3, 2, 2, 2, 2, 1, 3, 1, 1, 1, 2, 2, 2, 3, 2, 2, 2, 3, 3, 1, 3, 1, 2, 2, 2, 2, 1, 2, 2, 2, 3, 3, 1, 2, 2, 3, 2, 1, 3, 2, 1, 2, 2, 2, 2, 2, 2, 1, 2, 1, 2, 2, 2, 2, 2, 2, 2, 1, 3, 2, 3, 2, 1, 2, 1, 1, 1, 2, 2, 1, 2, 2, 1, 2, 2, 2, 2, 2, 2, 1, 2, 2, 2, 3, 2, 1, 2, 2, 1, 1, 1, 2, 2, 1, 2, 3, 1, 3, 1, 2, 2, 3, 1, 2, 2, 2, 2, 1, 1, 1, 2, 2, 2, 1, 1, 1, 2, 2, 2, 2, 1, 2, 2, 1, 3, 2, 2, 2, 1, 1, 2, 3, 2, 2, 2, 2, 2, 2, 1, 2, 1, 2, 2, 2, 2, 2, 2, 1, 2, 2, 1, 2, 3, 3, 2, 2, 2, 3]\n" ] } ], "source": [ "# Now you can use y_train.values.tolist() if necessary\n", "y_train_list = y_train.values.tolist()\n", "print(y_train_list)" ] }, { "cell_type": "code", "execution_count": 48, "id": "01aa50dd-9ffe-430a-9325-78fb8a3dec0e", "metadata": { "id": "01aa50dd-9ffe-430a-9325-78fb8a3dec0e", "outputId": "7273f6c8-a9cf-4304-84a9-d1d6486b6262", "colab": { "base_uri": "https://localhost:8080/", "height": 74 } }, "outputs": [ { "output_type": "execute_result", "data": { "text/plain": [ "DecisionTreeClassifier(random_state=0)" ], "text/html": [ "
DecisionTreeClassifier(random_state=0)
In a Jupyter environment, please rerun this cell to show the HTML representation or trust the notebook.
On GitHub, the HTML representation is unable to render, please try loading this page with nbviewer.org.
" ] }, "metadata": {}, "execution_count": 48 } ], "source": [ "weather_classifier = DecisionTreeClassifier(random_state = 0)\n", "weather_classifier.fit(X_train, y_train)" ] }, { "cell_type": "code", "execution_count": 49, "id": "82c869a1-bb28-48ee-996f-52ab26ec0cbc", "metadata": { "id": "82c869a1-bb28-48ee-996f-52ab26ec0cbc", "outputId": "434187cf-9ef5-48fa-814f-502b0876f045", "colab": { "base_uri": "https://localhost:8080/", "height": 221 } }, "outputs": [ { "output_type": "execute_result", "data": { "text/plain": [ "sklearn.tree._classes.DecisionTreeClassifier" ], "text/html": [ "
\n", "
sklearn.tree._classes.DecisionTreeClassifier
def __init__(*, criterion='gini', splitter='best', max_depth=None, min_samples_split=2, min_samples_leaf=1, min_weight_fraction_leaf=0.0, max_features=None, random_state=None, max_leaf_nodes=None, min_impurity_decrease=0.0, class_weight=None, ccp_alpha=0.0)
/usr/local/lib/python3.10/dist-packages/sklearn/tree/_classes.pyA decision tree classifier.\n",
              "\n",
              "Read more in the :ref:`User Guide <tree>`.\n",
              "\n",
              "Parameters\n",
              "----------\n",
              "criterion : {"gini", "entropy", "log_loss"}, default="gini"\n",
              "    The function to measure the quality of a split. Supported criteria are\n",
              "    "gini" for the Gini impurity and "log_loss" and "entropy" both for the\n",
              "    Shannon information gain, see :ref:`tree_mathematical_formulation`.\n",
              "\n",
              "splitter : {"best", "random"}, default="best"\n",
              "    The strategy used to choose the split at each node. Supported\n",
              "    strategies are "best" to choose the best split and "random" to choose\n",
              "    the best random split.\n",
              "\n",
              "max_depth : int, default=None\n",
              "    The maximum depth of the tree. If None, then nodes are expanded until\n",
              "    all leaves are pure or until all leaves contain less than\n",
              "    min_samples_split samples.\n",
              "\n",
              "min_samples_split : int or float, default=2\n",
              "    The minimum number of samples required to split an internal node:\n",
              "\n",
              "    - If int, then consider `min_samples_split` as the minimum number.\n",
              "    - If float, then `min_samples_split` is a fraction and\n",
              "      `ceil(min_samples_split * n_samples)` are the minimum\n",
              "      number of samples for each split.\n",
              "\n",
              "    .. versionchanged:: 0.18\n",
              "       Added float values for fractions.\n",
              "\n",
              "min_samples_leaf : int or float, default=1\n",
              "    The minimum number of samples required to be at a leaf node.\n",
              "    A split point at any depth will only be considered if it leaves at\n",
              "    least ``min_samples_leaf`` training samples in each of the left and\n",
              "    right branches.  This may have the effect of smoothing the model,\n",
              "    especially in regression.\n",
              "\n",
              "    - If int, then consider `min_samples_leaf` as the minimum number.\n",
              "    - If float, then `min_samples_leaf` is a fraction and\n",
              "      `ceil(min_samples_leaf * n_samples)` are the minimum\n",
              "      number of samples for each node.\n",
              "\n",
              "    .. versionchanged:: 0.18\n",
              "       Added float values for fractions.\n",
              "\n",
              "min_weight_fraction_leaf : float, default=0.0\n",
              "    The minimum weighted fraction of the sum total of weights (of all\n",
              "    the input samples) required to be at a leaf node. Samples have\n",
              "    equal weight when sample_weight is not provided.\n",
              "\n",
              "max_features : int, float or {"auto", "sqrt", "log2"}, default=None\n",
              "    The number of features to consider when looking for the best split:\n",
              "\n",
              "        - If int, then consider `max_features` features at each split.\n",
              "        - If float, then `max_features` is a fraction and\n",
              "          `max(1, int(max_features * n_features_in_))` features are considered at\n",
              "          each split.\n",
              "        - If "auto", then `max_features=sqrt(n_features)`.\n",
              "        - If "sqrt", then `max_features=sqrt(n_features)`.\n",
              "        - If "log2", then `max_features=log2(n_features)`.\n",
              "        - If None, then `max_features=n_features`.\n",
              "\n",
              "        .. deprecated:: 1.1\n",
              "            The `"auto"` option was deprecated in 1.1 and will be removed\n",
              "            in 1.3.\n",
              "\n",
              "    Note: the search for a split does not stop until at least one\n",
              "    valid partition of the node samples is found, even if it requires to\n",
              "    effectively inspect more than ``max_features`` features.\n",
              "\n",
              "random_state : int, RandomState instance or None, default=None\n",
              "    Controls the randomness of the estimator. The features are always\n",
              "    randomly permuted at each split, even if ``splitter`` is set to\n",
              "    ``"best"``. When ``max_features < n_features``, the algorithm will\n",
              "    select ``max_features`` at random at each split before finding the best\n",
              "    split among them. But the best found split may vary across different\n",
              "    runs, even if ``max_features=n_features``. That is the case, if the\n",
              "    improvement of the criterion is identical for several splits and one\n",
              "    split has to be selected at random. To obtain a deterministic behaviour\n",
              "    during fitting, ``random_state`` has to be fixed to an integer.\n",
              "    See :term:`Glossary <random_state>` for details.\n",
              "\n",
              "max_leaf_nodes : int, default=None\n",
              "    Grow a tree with ``max_leaf_nodes`` in best-first fashion.\n",
              "    Best nodes are defined as relative reduction in impurity.\n",
              "    If None then unlimited number of leaf nodes.\n",
              "\n",
              "min_impurity_decrease : float, default=0.0\n",
              "    A node will be split if this split induces a decrease of the impurity\n",
              "    greater than or equal to this value.\n",
              "\n",
              "    The weighted impurity decrease equation is the following::\n",
              "\n",
              "        N_t / N * (impurity - N_t_R / N_t * right_impurity\n",
              "                            - N_t_L / N_t * left_impurity)\n",
              "\n",
              "    where ``N`` is the total number of samples, ``N_t`` is the number of\n",
              "    samples at the current node, ``N_t_L`` is the number of samples in the\n",
              "    left child, and ``N_t_R`` is the number of samples in the right child.\n",
              "\n",
              "    ``N``, ``N_t``, ``N_t_R`` and ``N_t_L`` all refer to the weighted sum,\n",
              "    if ``sample_weight`` is passed.\n",
              "\n",
              "    .. versionadded:: 0.19\n",
              "\n",
              "class_weight : dict, list of dict or "balanced", default=None\n",
              "    Weights associated with classes in the form ``{class_label: weight}``.\n",
              "    If None, all classes are supposed to have weight one. For\n",
              "    multi-output problems, a list of dicts can be provided in the same\n",
              "    order as the columns of y.\n",
              "\n",
              "    Note that for multioutput (including multilabel) weights should be\n",
              "    defined for each class of every column in its own dict. For example,\n",
              "    for four-class multilabel classification weights should be\n",
              "    [{0: 1, 1: 1}, {0: 1, 1: 5}, {0: 1, 1: 1}, {0: 1, 1: 1}] instead of\n",
              "    [{1:1}, {2:5}, {3:1}, {4:1}].\n",
              "\n",
              "    The "balanced" mode uses the values of y to automatically adjust\n",
              "    weights inversely proportional to class frequencies in the input data\n",
              "    as ``n_samples / (n_classes * np.bincount(y))``\n",
              "\n",
              "    For multi-output, the weights of each column of y will be multiplied.\n",
              "\n",
              "    Note that these weights will be multiplied with sample_weight (passed\n",
              "    through the fit method) if sample_weight is specified.\n",
              "\n",
              "ccp_alpha : non-negative float, default=0.0\n",
              "    Complexity parameter used for Minimal Cost-Complexity Pruning. The\n",
              "    subtree with the largest cost complexity that is smaller than\n",
              "    ``ccp_alpha`` will be chosen. By default, no pruning is performed. See\n",
              "    :ref:`minimal_cost_complexity_pruning` for details.\n",
              "\n",
              "    .. versionadded:: 0.22\n",
              "\n",
              "Attributes\n",
              "----------\n",
              "classes_ : ndarray of shape (n_classes,) or list of ndarray\n",
              "    The classes labels (single output problem),\n",
              "    or a list of arrays of class labels (multi-output problem).\n",
              "\n",
              "feature_importances_ : ndarray of shape (n_features,)\n",
              "    The impurity-based feature importances.\n",
              "    The higher, the more important the feature.\n",
              "    The importance of a feature is computed as the (normalized)\n",
              "    total reduction of the criterion brought by that feature.  It is also\n",
              "    known as the Gini importance [4]_.\n",
              "\n",
              "    Warning: impurity-based feature importances can be misleading for\n",
              "    high cardinality features (many unique values). See\n",
              "    :func:`sklearn.inspection.permutation_importance` as an alternative.\n",
              "\n",
              "max_features_ : int\n",
              "    The inferred value of max_features.\n",
              "\n",
              "n_classes_ : int or list of int\n",
              "    The number of classes (for single output problems),\n",
              "    or a list containing the number of classes for each\n",
              "    output (for multi-output problems).\n",
              "\n",
              "n_features_in_ : int\n",
              "    Number of features seen during :term:`fit`.\n",
              "\n",
              "    .. versionadded:: 0.24\n",
              "\n",
              "feature_names_in_ : ndarray of shape (`n_features_in_`,)\n",
              "    Names of features seen during :term:`fit`. Defined only when `X`\n",
              "    has feature names that are all strings.\n",
              "\n",
              "    .. versionadded:: 1.0\n",
              "\n",
              "n_outputs_ : int\n",
              "    The number of outputs when ``fit`` is performed.\n",
              "\n",
              "tree_ : Tree instance\n",
              "    The underlying Tree object. Please refer to\n",
              "    ``help(sklearn.tree._tree.Tree)`` for attributes of Tree object and\n",
              "    :ref:`sphx_glr_auto_examples_tree_plot_unveil_tree_structure.py`\n",
              "    for basic usage of these attributes.\n",
              "\n",
              "See Also\n",
              "--------\n",
              "DecisionTreeRegressor : A decision tree regressor.\n",
              "\n",
              "Notes\n",
              "-----\n",
              "The default values for the parameters controlling the size of the trees\n",
              "(e.g. ``max_depth``, ``min_samples_leaf``, etc.) lead to fully grown and\n",
              "unpruned trees which can potentially be very large on some data sets. To\n",
              "reduce memory consumption, the complexity and size of the trees should be\n",
              "controlled by setting those parameter values.\n",
              "\n",
              "The :meth:`predict` method operates using the :func:`numpy.argmax`\n",
              "function on the outputs of :meth:`predict_proba`. This means that in\n",
              "case the highest predicted probabilities are tied, the classifier will\n",
              "predict the tied class with the lowest index in :term:`classes_`.\n",
              "\n",
              "References\n",
              "----------\n",
              "\n",
              ".. [1] https://en.wikipedia.org/wiki/Decision_tree_learning\n",
              "\n",
              ".. [2] L. Breiman, J. Friedman, R. Olshen, and C. Stone, "Classification\n",
              "       and Regression Trees", Wadsworth, Belmont, CA, 1984.\n",
              "\n",
              ".. [3] T. Hastie, R. Tibshirani and J. Friedman. "Elements of Statistical\n",
              "       Learning", Springer, 2009.\n",
              "\n",
              ".. [4] L. Breiman, and A. Cutler, "Random Forests",\n",
              "       https://www.stat.berkeley.edu/~breiman/RandomForests/cc_home.htm\n",
              "\n",
              "Examples\n",
              "--------\n",
              ">>> from sklearn.datasets import load_iris\n",
              ">>> from sklearn.model_selection import cross_val_score\n",
              ">>> from sklearn.tree import DecisionTreeClassifier\n",
              ">>> clf = DecisionTreeClassifier(random_state=0)\n",
              ">>> iris = load_iris()\n",
              ">>> cross_val_score(clf, iris.data, iris.target, cv=10)\n",
              "...                             # doctest: +SKIP\n",
              "...\n",
              "array([ 1.     ,  0.93...,  0.86...,  0.93...,  0.93...,\n",
              "        0.93...,  0.93...,  1.     ,  0.93...,  1.      ])
\n", " \n", "
" ] }, "metadata": {}, "execution_count": 49 } ], "source": [ "type(weather_classifier)" ] }, { "cell_type": "markdown", "id": "vULqmNvVF4q4", "metadata": { "id": "vULqmNvVF4q4" }, "source": [ "### **5. Model Evaluation**\n", "Evaluate the model's performance using metrics such as accuracy, precision, recall, and F1-score." ] }, { "cell_type": "code", "execution_count": 50, "id": "lYjAaucHjeij", "metadata": { "id": "lYjAaucHjeij" }, "outputs": [], "source": [ "# Make predictions\n", "y_pred_array = weather_classifier.predict(X_test)" ] }, { "cell_type": "code", "execution_count": 51, "id": "68E1R0hGjee_", "metadata": { "id": "68E1R0hGjee_" }, "outputs": [], "source": [ "# Ensure y_test is a Pandas Series to access its index\n", "if isinstance(y_test, np.ndarray):\n", " y_test = pd.Series(y_test)" ] }, { "cell_type": "code", "execution_count": 52, "id": "UL0yIOXcjeYi", "metadata": { "id": "UL0yIOXcjeYi" }, "outputs": [], "source": [ "# Create DataFrame from the predictions\n", "y_pred = pd.DataFrame(y_pred_array, columns=[\"weather\"])" ] }, { "cell_type": "code", "execution_count": 53, "id": "chg9gMVRjkH9", "metadata": { "id": "chg9gMVRjkH9" }, "outputs": [], "source": [ "# Set the index of the DataFrame to match y_test index\n", "y_pred.index = y_test.index" ] }, { "cell_type": "code", "execution_count": 54, "id": "acb6ff0f-e48c-4184-9cd7-75281b5a5c9b", "metadata": { "id": "acb6ff0f-e48c-4184-9cd7-75281b5a5c9b" }, "outputs": [], "source": [ "# Ensure the data type is int\n", "y_pred = y_pred.astype(int)" ] }, { "cell_type": "code", "execution_count": 55, "id": "rHo5wG80jpeR", "metadata": { "id": "rHo5wG80jpeR", "outputId": "c50535fd-7b87-43ab-c6cb-d8fa9930ec92", "colab": { "base_uri": "https://localhost:8080/" } }, "outputs": [ { "output_type": "stream", "name": "stdout", "text": [ " weather\n", "571 1\n", "1369 2\n", "1394 2\n", "115 2\n", "456 2\n", "... ...\n", "1730 2\n", "873 2\n", "1083 3\n", "1733 2\n", "329 3\n", "\n", "[513 rows x 1 columns]\n" ] } ], "source": [ "print(y_pred)" ] }, { "cell_type": "code", "execution_count": 56, "id": "65aab513-c6cf-4489-96f9-7d750754233e", "metadata": { "id": "65aab513-c6cf-4489-96f9-7d750754233e" }, "outputs": [], "source": [ "y_test = np.array(y_test,dtype = int)" ] }, { "cell_type": "code", "execution_count": 57, "id": "05ca175a-a41b-42c3-92bc-97375c6aab73", "metadata": { "id": "05ca175a-a41b-42c3-92bc-97375c6aab73", "outputId": "c1c02c65-a259-45cf-c960-3af1d0fb8cad", "colab": { "base_uri": "https://localhost:8080/" } }, "outputs": [ { "output_type": "execute_result", "data": { "text/plain": [ "numpy.ndarray" ] }, "metadata": {}, "execution_count": 57 } ], "source": [ "type(y_test)" ] }, { "cell_type": "code", "execution_count": 58, "id": "c1e80c44-e162-4ca1-83a5-13f64b036b19", "metadata": { "id": "c1e80c44-e162-4ca1-83a5-13f64b036b19", "outputId": "fbbd3fcd-3549-4a38-f49a-ef8cba6c7a0a", "colab": { "base_uri": "https://localhost:8080/" } }, "outputs": [ { "output_type": "execute_result", "data": { "text/plain": [ "array([1, 2, 2, 2, 2, 2, 2, 1, 2, 1, 2, 2, 2, 1, 2, 1, 1, 3, 1, 3, 1, 3,\n", " 2, 1, 1, 2, 1, 1, 2, 2, 1, 2, 1, 2, 2, 2, 1, 1, 1, 1, 3, 2, 2, 2,\n", " 2, 2, 3, 3, 3, 1, 1, 2, 2, 2, 1, 2, 3, 2, 2, 1, 1, 1, 3, 1, 3, 2,\n", " 2, 1, 1, 2, 2, 1, 3, 2, 2, 2, 2, 2, 2, 3, 1, 2, 2, 2, 1, 1, 3, 2,\n", " 2, 2, 1, 2, 2, 1, 1, 2, 3, 2, 2, 3, 1, 2, 2, 1, 2, 2, 1, 2, 3, 2,\n", " 2, 2, 2, 1, 1, 2, 2, 3, 2, 2, 2, 2, 2, 1, 1, 2, 1, 2, 2, 2, 2, 2,\n", " 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 2, 1, 2, 2, 3,\n", " 2, 2, 2, 1, 2, 1, 3, 1, 2, 3, 1, 1, 2, 1, 2, 3, 3, 2, 2, 2, 2, 2,\n", " 2, 2, 2, 3, 2, 2, 2, 2, 2, 1, 2, 3, 3, 3, 1, 2, 3, 2, 2, 2, 2, 1,\n", " 1, 2, 2, 2, 2, 2, 3, 2, 2, 2, 2, 3, 1, 2, 2, 1, 2, 2, 2, 1, 2, 2,\n", " 2, 2, 3, 2, 1, 2, 3, 1, 2, 2, 2, 2, 3, 2, 2, 2, 3, 1, 2, 2, 2, 2,\n", " 1, 2, 1, 1, 1, 3, 2, 1, 2, 2, 3, 2, 1, 2, 1, 3, 1, 2, 1, 1, 2, 2,\n", " 1, 1, 2, 2, 2, 2, 3, 2, 1, 2, 2, 2, 2, 1, 2, 2, 3, 2, 3, 1, 2, 2,\n", " 1, 2, 1, 2, 1, 2, 2, 1, 2, 3, 2, 1, 1, 2, 1, 2, 2, 1, 2, 3, 2, 2,\n", " 1, 1, 1, 2, 1, 2, 3, 2, 3, 2, 2, 2, 2, 1, 1, 2, 2, 1, 2, 2, 2, 2,\n", " 1, 2, 2, 1, 2, 2, 3, 2, 3, 2, 2, 2, 2, 2, 3, 2, 2, 1, 1, 3, 2, 2,\n", " 2, 3, 2, 1, 1, 1, 1, 1, 2, 2, 2, 1, 3, 2, 2, 2, 1, 2, 1, 2, 1, 1,\n", " 1, 1, 1, 3, 1, 2, 2, 2, 2, 2, 3, 2, 3, 2, 2, 2, 2, 3, 1, 1, 2, 2,\n", " 2, 1, 3, 2, 2, 2, 1, 2, 2, 2, 2, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1,\n", " 2, 1, 2, 3, 1, 1, 2, 1, 2, 1, 1, 2, 2, 1, 2, 2, 2, 1, 2, 2, 2, 2,\n", " 2, 2, 3, 2, 3, 2, 2, 2, 2, 2, 2, 2, 1, 2, 2, 2, 2, 1, 3, 2, 1, 2,\n", " 1, 1, 2, 1, 2, 1, 2, 2, 1, 1, 2, 2, 2, 2, 2, 3, 2, 1, 2, 1, 2, 2,\n", " 2, 3, 3, 3, 1, 2, 2, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2, 1, 2, 2, 1, 2,\n", " 1, 2, 2, 2, 3, 2, 3])" ] }, "metadata": {}, "execution_count": 58 } ], "source": [ "y_test" ] }, { "cell_type": "code", "execution_count": 59, "id": "42c4582e-1a9e-4ca5-9133-d4ff0bc7ca92", "metadata": { "id": "42c4582e-1a9e-4ca5-9133-d4ff0bc7ca92", "outputId": "45c2cec0-dfa9-4687-dc61-84a91c222f78", "colab": { "base_uri": "https://localhost:8080/" } }, "outputs": [ { "output_type": "execute_result", "data": { "text/plain": [ "0.9980506822612085" ] }, "metadata": {}, "execution_count": 59 } ], "source": [ "# Measure Accuracy\n", "metrics.accuracy_score(y_test,y_pred)" ] }, { "cell_type": "code", "execution_count": 60, "id": "181bd3c2-6026-4092-ac0b-4a51c928d6b6", "metadata": { "id": "181bd3c2-6026-4092-ac0b-4a51c928d6b6", "outputId": "a2b2a35e-f938-4e6f-cd74-1de0cc01b42b", "colab": { "base_uri": "https://localhost:8080/" } }, "outputs": [ { "output_type": "stream", "name": "stdout", "text": [ " precision recall f1-score support\n", "\n", " 1 1.00 1.00 1.00 136\n", " 2 1.00 1.00 1.00 311\n", " 3 0.99 1.00 0.99 66\n", "\n", " accuracy 1.00 513\n", " macro avg 1.00 1.00 1.00 513\n", "weighted avg 1.00 1.00 1.00 513\n", "\n" ] } ], "source": [ "print(metrics.classification_report(y_test, y_pred))" ] }, { "cell_type": "markdown", "id": "566afdb7-c26f-46b0-9ae2-0e0ca73ef037", "metadata": { "id": "566afdb7-c26f-46b0-9ae2-0e0ca73ef037" }, "source": [ "### **6. Model Deployment**\n", "Save the trained model for future use and deploying it in real-world applications." ] }, { "cell_type": "code", "execution_count": 61, "id": "2f755dff-26ee-407e-8c0b-2a3056d0c1cb", "metadata": { "id": "2f755dff-26ee-407e-8c0b-2a3056d0c1cb", "outputId": "536a7788-0967-4762-bd2e-dff2fcb60308", "colab": { "base_uri": "https://localhost:8080/" } }, "outputs": [ { "output_type": "stream", "name": "stdout", "text": [ "#pragma once\n", "#include \n", "namespace Eloquent {\n", " namespace ML {\n", " namespace Port {\n", " class DecisionTree {\n", " public:\n", " /**\n", " * Predict class for features vector\n", " */\n", " int predict(float *x) {\n", " if (x[1] <= 79.95000076293945) {\n", " if (x[1] <= 50.0) {\n", " return 3;\n", " }\n", "\n", " else {\n", " return 2;\n", " }\n", " }\n", "\n", " else {\n", " if (x[0] <= 24.049999237060547) {\n", " return 0;\n", " }\n", "\n", " else {\n", " return 1;\n", " }\n", " }\n", " }\n", "\n", " protected:\n", " };\n", " }\n", " }\n", " }\n" ] } ], "source": [ "print(port(weather_classifier))" ] }, { "cell_type": "markdown", "id": "ScKF5VgskBQq", "metadata": { "id": "ScKF5VgskBQq" }, "source": [ "Now copy the above Decision Tree classifier code and save in any text file with name `DecisionTree.h`\n", "\n", "Then copy the below arduino code and save it named as `Weather_determining_model.ino`\n" ] }, { "cell_type": "markdown", "id": "q_eDDNaljuW6", "metadata": { "id": "q_eDDNaljuW6" }, "source": [ "\n", "\n", "```\n", "#include \"DecisionTree.h\"\n", "Eloquent::ML::Port::DecisionTree weatherClassifier;\n", "#include \n", "#include \"DHT.h\"\n", "\n", "// Variable Declaration\n", "float t;\n", "float h;\n", "float hic;\n", "int prediction;\n", "\n", "#define DHTPIN 4 // Digital pin connected to the DHT sensor\n", "#define DHTTYPE DHT11 // DHT 11\n", "DHT dht(DHTPIN, DHTTYPE);\n", "\n", "\n", "void setup() {\n", " // put your setup code here, to run once:\n", " Serial.begin(9600);\n", " Serial.print(\"Welcome!\");\n", " delay(10);\n", "\n", " dht.begin();\n", "}\n", "\n", "void loop() {\n", " // put your main code here, to run repeatedly:\n", " delay(2000);\n", " // Read humidity\n", " float h = dht.readHumidity();\n", " // Read temperature as Celsius\n", " float t = dht.readTemperature();\n", "\n", " // Check if any reads failed and exit early (to try again).\n", " if (isnan(h) || isnan(t)) {\n", " Serial.println(F(\"Failed to read from DHT sensor!\"));\n", " return;\n", " }\n", "\n", " // Compute heat index in Celsius (the default)\n", " float hic = calculate_heat_index(t,h);\n", "\n", "\n", "\n", " // Print values of temperature, humidity and heat index to serial monitor\n", " Serial.print(F(\"Humidity: \"));\n", " Serial.print(h);\n", " Serial.print(F(\"% Temperature: \"));\n", " Serial.print(t);\n", " Serial.print(F(\"°C Heat index: \"));\n", " Serial.print(hic);\n", " Serial.println(F(\"°C\"));\n", "\n", " float input[3] = {t,h,hic};\n", " // Giving input values to predict Function\n", " int prediction = weatherClassifier.predict(input);\n", "\n", " // Checking Condition of weather\n", " Serial.print(\"Prediction: \");\n", " // Serial.print(prediction);\n", " if (prediction == 0){\n", " Serial.println(\"Foggy \\U0001F32B\");\n", " }\n", " else if(prediction == 1){\n", " Serial.println(\"Rainy \\U0001F327\");\n", " }\n", " else if(prediction == 2){\n", " Serial.println(\"Cloudy \\u2601️\");\n", " }\n", " else if(prediction == 3){\n", " Serial.println(\"Sunny \\u2600\");\n", " }\n", "\n", " Serial.println();\n", "\n", " delay(1000);\n", "}\n", "\n", "double calculate_heat_index(double temperature, double humidity) {\n", " // Coefficients for the heat index formula\n", " double c1 = -42.379;\n", " double c2 = 2.04901523;\n", " double c3 = 10.14333127;\n", " double c4 = -0.22475541;\n", " double c5 = -6.83783e-3;\n", " double c6 = -5.481717e-2;\n", " double c7 = 1.22874e-3;\n", " double c8 = 8.5282e-4;\n", " double c9 = -1.99e-6;\n", "\n", " // Calculate the heat index\n", " double heat_index = (c1 + (c2 * temperature) + (c3 * humidity) + (c4 * temperature * humidity) +\n", " (c5 * pow(temperature, 2)) + (c6 * pow(humidity, 2)) +\n", " (c7 * pow(temperature, 2) * humidity) + (c8 * temperature * pow(humidity, 2)) +\n", " (c9 * pow(temperature, 2) * pow(humidity, 2)));\n", "\n", " // Adjustments for specific conditions\n", " if (humidity < 13 && (80 <= temperature && temperature <= 112)) {\n", " double adjustment = ((13 - humidity) / 4.0) * sqrt((17 - fabs(temperature - 95.0)) / 17);\n", " heat_index -= adjustment;\n", " } else if (humidity > 85 && (80 <= temperature && temperature <= 87)) {\n", " double adjustment = ((humidity - 85) / 10.0) * ((87 - temperature) / 5.0);\n", " heat_index += adjustment;\n", " }\n", "\n", " return heat_index;\n", "}\n", "\n", "\n", "```\n", "\n" ] }, { "cell_type": "markdown", "id": "ecTNmC1xmal_", "metadata": { "id": "ecTNmC1xmal_" }, "source": [ "Now move these both files in same folder then open the `Weather_determining_model.ino` file in your arduino IDE and upload the code to your Esp32 microcontroller.\n", "\n", "Before uploading the code to the board, do verify that the `DecisionTree.h` file is also opened in the same arduino IDE beside the `Weather_determining_model.ino` file.\n", "\n", "If any error occurs then open the `DecisionTree.h` file and comment the line containing `#include `.\n" ] }, { "cell_type": "markdown", "source": [ "Now note the COM port of the esp32 and then close the Arduino IDE, so that serial connection with the Arduino IDE is disconnected.\n", "\n", "Replace the ``` COM10``` in the below python code with the COM port noted earlier." ], "metadata": { "id": "ejzfGmwfMhbT" }, "id": "ejzfGmwfMhbT" }, { "cell_type": "code", "execution_count": null, "id": "3ab7a75f-a119-40b0-a116-4c8e8a7d9d44", "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 383 }, "id": "3ab7a75f-a119-40b0-a116-4c8e8a7d9d44", "outputId": "76a8e7bc-f347-47d1-d261-f45e2676ea84" }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Humidity: 95.00% Temperature: 27.70°C Heat index: 175.56°C\n", "Prediction: Rainy 🌧\n", "\n", "Humidity: 95.00% Temperature: 27.70°C Heat index: 175.56°C\n", "Prediction: Rainy 🌧\n", "\n", "Humidity: 95.00% Temperature: 27.70°C Heat index: 175.56°C\n", "Prediction: Rainy 🌧\n", "\n", "Serial read stopped.\n" ] } ], "source": [ "import serial\n", "import time\n", "\n", "# Replace 'COM10' with the appropriate serial port for your system\n", "SERIAL_PORT = 'COM10'\n", "BAUD_RATE = 9600 # the baud rate set on your ESP32\n", "\n", "def read_from_esp32():\n", " # Open the serial connection\n", " with serial.Serial(SERIAL_PORT, BAUD_RATE, timeout=1) as ser:\n", " # Give some time for the serial connection to establish\n", " time.sleep(2)\n", "\n", " # Clear any existing input in the buffer\n", " ser.flushInput()\n", "\n", " try:\n", " while True:\n", " # Read data from the ESP32\n", " if ser.in_waiting > 0:\n", " line = ser.readline().decode('utf-8').rstrip()\n", " print(f\"{line}\")\n", " time.sleep(0.1)\n", "\n", " except KeyboardInterrupt:\n", " print(\"Serial read stopped.\")\n", "\n", "if __name__ == \"__main__\":\n", " read_from_esp32()\n" ] }, { "cell_type": "markdown", "source": [ "## Author" ], "metadata": { "id": "twxwhNy56gPu" }, "id": "twxwhNy56gPu" }, { "cell_type": "markdown", "source": [ "### Developed by Harsh Raj\n", "Contacts :\n", "- [Email](mailto:developerharshraj@gmail.com)\n", "- [LinkedIn](https://in.linkedin.com/in/harsh-raj-416a0b27b)\n", "- [GitHub](https://github.com/HarshRajTiwary)\n", "\n", "### Happy Learning" ], "metadata": { "id": "So055cQR58gK" }, "id": "So055cQR58gK" } ], "metadata": { "colab": { "provenance": [], "toc_visible": true }, "kernelspec": { "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.10.11" } }, "nbformat": 4, "nbformat_minor": 5 }