{"cells":[{"metadata":{},"cell_type":"markdown","source":"# About this notebook....\nSkin cancer is the most prevalent type of cancer. Melanoma, specifically, is responsible for 75% of skin cancer deaths.This notebook give a overview of these compatition. In this we will see different Augmentation technique, EDA, Model and some cool stuff...\n\nAs always i try my level best to explian each and everything in this competation as simple as possible. And try to update this notebook as I learn new thing in this competation...","execution_count":null},{"metadata":{},"cell_type":"markdown","source":"## References...\n* Image Augmentation technique Which is Needed in this competation.[Click here](https://www.kaggle.com/saife245/cutmix-vs-mixup-vs-gridmask-vs-cutout/notebook#MixUp-data-augmentation)\n* Thanks to starter kernal.[click here](https://www.kaggle.com/mgornergoogle/getting-started-with-100-flowers-on-tpu)\n* Thanks to kernal for some idea.[click here](https://www.kaggle.com/manojprabhaakr/melanoma-tpu-starter-efficientnet-b0)\n\n## My Other work on Kaggle...\n* Image Augmentation technique Which is Needed in this competation.[Click here](https://www.kaggle.com/saife245/cutmix-vs-mixup-vs-gridmask-vs-cutout/notebook#MixUp-data-augmentation)\n* 100+ Visualization in R.[click here](https://www.kaggle.com/saife245/r-challenge-of-100-visualization-in-r)\n* SqueezeNet-model of size 0.5 MB.[Click here](https://www.kaggle.com/saife245/squeezenet-model-size-of-0-5mb-is-it-true)\n* NeuroImaging Challenge Notebook.[Click here](https://www.kaggle.com/saife245/neuroimaging-in-depth-understanding-eda-model)","execution_count":null},{"metadata":{},"cell_type":"markdown","source":"## Update Version...\n* Version 5 - Updating Visualization\n* Version 4 - Increase the Epochs and adding Dropout....\n* Version 3 - Updating model and Updating IP...\n* version 2 - Adding few other Image processing and Details...","execution_count":null},{"metadata":{},"cell_type":"markdown","source":"## Introduction...\nSkin cancer is the most prevalent type of cancer. Melanoma, specifically, is responsible for 75% of skin cancer deaths, despite being the least common skin cancer. The American Cancer Society estimates over 100,000 new melanoma cases will be diagnosed in 2020. It's also expected that almost 7,000 people will die from the disease. As with other cancers, early and accurate detection—potentially aided by data science—can make treatment more effective.\n\nCurrently, dermatologists evaluate every one of a patient's moles to identify outlier lesions or “ugly ducklings” that are most likely to be melanoma. Existing AI approaches have not adequately considered this clinical frame of reference. Dermatologists could enhance their diagnostic accuracy if detection algorithms take into account “contextual” images within the same patient to determine which images represent a melanoma. If successful, classifiers would be more accurate and could better support dermatological clinic work.","execution_count":null},{"metadata":{},"cell_type":"markdown","source":"## Symptoms and warning signs\nBasal cell and squamous cell carcinoma are two examples of nonmelanoma skin cancer.The U.S-based Skin Cancer Foundation says that everyone should examine their whole body, from head to toe, once a month, and take note of:\n* any new moles or growths\n* moles or growths that have grown\n* moles or growths that have changed significantly in another way\n* lesions that change, itch, bleed or have not healed\n* The most common sign of skin cancer is an abnormal pink or brown spot, patch, or mole.\n\nThere are different forms of skin cancer, and the most common are:\n* basal cell carcinoma\n* squamous cell carcinoma\n* melanoma\n\nMelanoma is the type most likely to develop in a mole.\n\nEnlarged lymph nodes can also signal skin cancer. Lymph nodes are small, bean-sized collections of immune cells beneath the skin. Many are in the neck, groin, and underarms.\n\n## Staging for basal cell and squamous cell carcinoma\nBasal cell and squamous cell carcinoma usually do not spread to other parts of the body. On rare occasions, a person’s lymph node(s) may be removed to find out if the cancer has spread, which is called metastasis. Lymph nodes are bean-shaped organs that help fight infection. The doctor may recommend other tests to determine the extent of the disease, including blood tests, chest x-rays, and imaging scans of the lymph nodes and nerves, liver, bones, and brain, but this is uncommon.\n\n### Staging for Merkel cell cancer\nDoctors use the TNM system to describe the stage of Merkel cell cancer. Doctors use the results from diagnostic tests and scans to answer these questions:\n\n* Tumor (T): How large is the primary tumor? Where is it located?\n* Node (N): Has the tumor spread to the lymph nodes? If so, where and how many?\n* Metastasis (M): Has the cancer spread to other parts of the body? If so, where and how much?\n\nThe results are combined to determine the stage of Merkel cell cancer for each person.\n\nThere are 5 stages: stage 0 (zero) and stages I through IV (1 through 4). The stage provides a common way of describing the cancer, so doctors can work together to plan the best treatments.\n\n* Stage 0: This is called carcinoma in situ. Cancer cells are found only in the top layers of the skin. The cancer does not involve the lymph nodes, and it has not spread.\n* Stage I: The primary tumor is 2 centimeters (cm) or smaller at its widest part. The cancer has not spread to the lymph nodes or to other parts of the body.\n* Stage IIA: The tumor is larger than 2 cm and has not spread to the lymph nodes or other parts of the body.\n* Stage IIB: The tumor has grown into nearby tissues, such as muscles, cartilage, or bone. It has not spread to the lymph nodes or elsewhere in the body.\n* Stage III: The cancer has spread to the lymph nodes. The tumor can be any size and may have spread to nearby bone, muscle, connective tissue, or cartilage.\n    * Stage IIIA: The tumor is any size or may have grown into nearby tissues. Biopsy or surgery has found that the cancer has spread to nearby lymph nodes. The cancer has not spread to other parts of the body. Or, there is no sign of a tumor, but cancer was found in a nearby lymph node during an exam or with imaging scans. Its presence was confirmed using a microscope.\n    * Stage IIIB: The tumor is any size or may have grown into nearby tissues. The cancer has spread through the lymphatic system, either to a regional lymph node located near where the cancer started or to a skin site on the way to a lymph node, called “in-transit metastasis.” In-transit metastasis may have reached these other lymph nodes. The lymphatic system is part of the immune system and drains fluid from body tissues through a series of tubes or vessels.\n* Stage IV: The tumor has spread to distant parts of the body, such as the liver, lung, bone, or brain.\n\n## How to spot basal and squamous cell skin cancers\nBasal and squamous cell skin cancers are more common and not as dangerous as melanoma. They can develop anywhere, but they are most likely to form on the face, head, or neck. A basal cell carcinoma may look like:\n* a flat, firm, pale or yellow area of skin, similar to a scar\n* a reddish, raised, sometimes itchy patch of skin\n* small shiny, pearly, pink or red translucent bumps, which can have blue, brown, or black areas.\n* pink growths that have raised edges and a lower center, and abnormal blood vessels may spread from the growth like the spokes of a wheel\n* open sores that may ooze or crust, and either do not heal or heal and return\n\nA squamous cell carcinoma may look like:\n* a rough or scaly red patch that may crust or bleed\n* a raised growth or lump, sometimes with a lower center\n* open sores that may ooze or crust, and either do not heal or heal and return\n* a growth that looks like a wart\n\n### Not all skin cancers look alike. The American Cancer Society recommend that a person should contact a doctor if they notice:\n* a mark that does not look like others on the body\n* a sore that does not heal\n* redness or new swelling outside the border of a mole\n* itching, pain, or tenderness in a mole\n* oozing, scaliness, or bleeding in a mole\n","execution_count":null},{"metadata":{},"cell_type":"markdown","source":"## Melanoma Skin Cancer Stages...\nThe stage of a cancer describes how much cancer is in the body. It helps determine how serious the cancer is and how best to treat it. Doctors also use a cancer's stage when talking about survival statistics.\n\n## Factors used for staging melanoma\nTo determine the stage of a melanoma, the lesion and some surrounding healthy tissue needs to be surgically removed and analyzed using a microscope. Doctors use the melanoma’s thickness, measured in millimeters (mm), and the other characteristics described in the Diagnosis section to help determine the disease’s stage.\n\nDoctors also use results from diagnostic tests to answer these questions about the stage of melanoma:\n* How thick or deep is the original melanoma, often called the primary melanoma or primary tumor?\n* Where is the melanoma located?\n* Has the melanoma spread to the lymph nodes? If so, where and how many?\n* Has the melanoma metastasized to other parts of the body? If so, where and how much?\n\nThe results are combined to determine the stage of melanoma for each person. The stages of melanoma include: stage 0 (zero) and stages I through IV (1 through 4). The stage provides a common way of describing the cancer, so doctors can work together to create the best treatment plan and understand a patient's prognosis.\n\n## Melanoma stage grouping...\n* Stage 0: This refers to melanoma in situ, which means melanoma cells are found only in the outer layer of skin or epidermis. This stage of melanoma is very unlikely to spread to other parts of the body.\n\n* Stage I: The primary melanoma is still only in the skin and is very thin. Stage I is divided into 2 subgroups, IA or IB, depending on the thickness of the melanoma and whether a pathologist sees ulceration under a microscope.\n\n* Stage II: Stage II melanoma is thicker than stage I melanoma, extending through the epidermis and further into the dermis, the dense inner layer of the skin. It has a higher chance of spreading. Stage II is divided into 3 subgroups—A, B, or C—depending on how thick the melanoma is and whether there is ulceration.\n* Stage III: This stage describes melanoma that has spread locally or through the lymphatic system to a regional lymph node located near where the cancer started or to a skin site on the way to a lymph node, called “in-transit metastasis, satellite metastasis, or microsatellite disease.” The lymphatic system is part of the immune system and drains fluid from body tissues through a series of tubes or vessels. Stage III is divided into 4 subgroups—A, B, C, or D—depending on the size and number of lymph nodes involved with melanoma, whether the primary tumor has satellite or in-transit lesions, and if it appears ulcerated under a microscope.\n* Stage IV: This stage describes melanoma that has spread through the bloodstream to other parts of the body, such as distant locations on the skin or soft tissue, distant lymph nodes, or other organs like the lung, liver, brain, bone, or gastrointestinal tract. Stage IV is further evaluated based on the location of distant metastasis:\n    * M1a: The cancer has only spread to distant skin and/or soft tissue sites.\n    * M1b: The cancer has spread to the lung.\n    * M1c: The cancer has spread to any other location that does not involve the central nervous system.\n    * M1d: The cancer has spread to the central nervous system, including the brain, spinal cord, and/or cerebrospinal fluid, or lining of the brain and/or spinal cord.\n\n**NOTE:-** **Recurrent:** Recurrent melanoma is melanoma that has come back after treatment. If the melanoma does return, there will be a round of tests to learn about the extent of the recurrence. These tests and scans may be similar to those done at the time of the original diagnosis.\n\n# How to spot melanoma\nThe medical community has developed two ways to spot the early signs of melanoma, the most dangerous type of skin cancer.\nA person can use the ABCDE method and the ugly duckling method.\n\n1. **The ABCDE method:-** Brown spots, marks, and moles are usually harmless. However, the first sign of melanoma can occur in what doctors call an atypical mole, or dysplastic nevi. To spot an atypical mole, check for the following:\n\n    * A: Asymmetry. If the two halves of a mole do not match, this can be an early indication of melanoma.\n    * B: Border. The edges of a harmless mole are even and smooth. If a mole has uneven edges, this can be an early sign of melanoma. The mole’s border may be scalloped or notched.\n    * C: Color.Harmless moles are a single shade, usually of brown. Melanoma can cause differentiation in shade, from tan, brown, or black to red, blue, or white.\n    * D: Diameter. Harmless moles tend to be smaller than dangerous ones, which are usually larger than a pencil’s eraser — around one-quarter of an inch, or 6 millimeters.\n    * E: Evolving. If a mole starts to change, or evolve, this can be a warning. Changes may involve shape, color, or elevation from the skin. Or, a mole may start to bleed, itch, or crust.\n![mealona.JPG](attachment:mealona.JPG)\n\n2. **The ugly duckling method:-** The ugly duckling method works on the premise that a person’s moles tend to resemble one another. If one mole stands out in any way, it may be a sign of skin cancer.\n\nOf course, not all moles and growths are cancerous. However, if a person notices any of the above characteristics, they should speak to a healthcare professional.\n\n![Melanoma-Cancer.JPG](attachment:Melanoma-Cancer.JPG)","attachments":{"mealona.JPG":{"image/jpeg":"/9j/4AAQSkZJRgABAQEAYABgAAD/4RDaRXhpZgAATU0AKgAAAAgABAE7AAIAAAAFAAAISodpAAQAAAABAAAIUJydAAEAAAAKAAAQyOocAAcAAAgMAAAAPgAAAAAc6gAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFNBSUYAAAAFkAMAAgAAABQAABCekAQAAgAAABQAABCykpEAAgAAAAM1MwAAkpIAAgAAAAM1MwAA6hwABwAACAwAAAiSAAAAABzqAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMjAyMDowNToyOSAxMToxNzozOQAyMDIwOjA1OjI5IDExOjE3OjM5AAAAUwBBAEkARgAAAP/hCxdodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvADw/eHBhY2tldCBiZWdpbj0n77u/JyBpZD0nVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkJz8+DQo8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIj48cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPjxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSJ1dWlkOmZhZjViZGQ1LWJhM2QtMTFkYS1hZDMxLWQzM2Q3NTE4MmYxYiIgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIi8+PHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9InV1aWQ6ZmFmNWJkZDUtYmEzZC0xMWRhLWFkMzEtZDMzZDc1MTgyZjFiIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iPjx4bXA6Q3JlYXRlRGF0ZT4yMDIwLTA1LTI5VDExOjE3OjM5LjUyOTwveG1wOkNyZWF0ZURhdGU+PC9yZGY6RGVzY3JpcHRpb24+PHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9InV1aWQ6ZmFmNWJkZDUtYmEzZC0xMWRhLWFkMzEtZDMzZDc1MTgyZjFiIiB4bWxuczpkYz0iaHR0cDovL3B1cmwub3JnL2RjL2VsZW1lbnRzLzEuMS8iPjxkYzpjcmVhdG9yPjxyZGY6U2VxIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+PHJkZjpsaT5TQUlGPC9yZGY6bGk+PC9yZGY6U2VxPg0KCQkJPC9kYzpjcmVhdG9yPjwvcmRmOkRlc2NyaXB0aW9uPjwvcmRmOlJERj48L3g6eG1wbWV0YT4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgPD94cGFja2V0IGVuZD0ndyc/Pv/bAEMABwUFBgUEBwYFBggHBwgKEQsK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AMKfxLqdqLm1uUsVvo7pIIyvmOrh49/CAFmYAHjgYBOR0qtbeKNWvdQ0lxHbRW7NdR3i7m+YwnBKgrntkA4POD0robvw5Y3l0bpxJHc+aswmikKsrhCmR/wEkY96bH4asIWtmi85Gt5pJ1YStlmkOX3EnkEnpQBgahrevT+CbvV1jtraGaz+0W3lSt5sWcFQ3GDkHkjGDxz1rd0jUdQm1a+07VYrZZbeOKZHtmYqUkLjBz3BQ89+OnSmJ4S06Ozls9901pJGYhbNcMY40JBwozx049Ogq7PpFvPdS3O6aKaURK7xSFSRGxZRx2yxz6g4oAv0UUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAZniS1mvvC+p2tqnmTzWskcaZA3MVIAya0x0oooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAormPFXj/RfB9xbQatJIZrgbgkSbiq5xuPoP8DWt/b2lDR11VtQt0sGUOLl5QEIPueKXMr2LcJJJ20Zo0VyjfE3wcshT+37YkdwGI/MDFc9e/HTw1a3bww29/dojY86KNQre43MD+lS6kFuy40KstFFnplFeYr8d/DRjLNaakrY4UxLz/49iuO1T47+IJ9QL6RZWdpaKfljnQyO3+8QR+Q6epqJV6a6msMHXm7KJ7/nFJmvnjxB8atf1rSfsVlbR6U7DEtxbzMXYf7PA2fmT7iuf0v4jeLtIh8q11u4kT0ucTEfi+T+tQ8TTTNo5dXcb7H1Rmkz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Kad7HU8diGrcx4JrXwJ1mzDSaFqEOoIORFMvkyfTOSpP/fNcfP4B8YW0hSXw7fkj/nnGJB+akivquiplhqbZpDMK8VZ6+p88/D/4Z65d+K7G917S5bPTrOUTsLjCtIy8qoXr97aTkYwCK+hh0oorWnTjTVkc1evOvLmkFFFFaGAUUUUAFFFFABXFeI5rmC9163jtr6V77To1tDb27upceaGG5RhSMr1IzxjNdrRigDhp9Fkee+vzZStfJrFu1vLtYssWIA5U9lxvzjjrmqWn6ZeyeINuoER3322RpJRpczNJCWYhftG/ZsKYGMccDGRXo2KMUAcANO8QTWF/ZwLPE+k2U1tYTO2PtMj52uD32xhBu/vO3pVODTLiTR9T/s9ZIy1n5b21vpU9oXkLDkl3O5wAeV9eT0r0ujFAHNWNrB4f1rUfstlLFZSrb7Vt4WZWkZmVmwO/3dx9OTXSijA9KKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiijNABRRmql/qlhpcPnaje29rH/fmkCD9aBpN7FuiuNvfiv4MsmKya3FIR/zxRpP5CqSfGrwU8mz+0Zl92tZMfyqPaQ7mqw9Vq6i/uO/orN0XX9K8QWn2jRr6G7iBwxjbJU+hHUfjWlV3vsZNNOzCiiigQUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFGaCa8t+JHxbj8OzSaR4fEdzqYGJZW5S3/wAW9u3f0qZSUFdmtKlOrLlgj0u6vbaxt2nvLiK3iX70krhVH1Jrnbj4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RQAUUUUAFFFFAGfqehaXrMfl6rp9tdr/ANNog2Pzrj774K+DL1i0VlPZMTz9nuGA/JsgfgK9AoqXCL3RpCrUh8Mmjze0+Bng+3kDTJfXY/uTXOB/44FNdro3h3SNAg8nR9PgtF7+WmC31PU/jWnRQoRjshzrVJ/FJsKKKKoyCiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooADXKeLPiNoHg/93qVw0t0RlbWBd0hHqecAfUin/ELxWvg/whc6gmGuW/c2yHvI3Q/Qcn8K+VLi4nv7yW7vJWmnmcvJI5yWJ71z1q3Jotz0cHg/b+9LY9X1L9oLVpZCNJ0e1to88Gd2kYj8MAfrVBPjz4rVstb6c49DEw/k1ecpF7VKIK4vb1G9z2FhMOlblPXNK/aElEyLruiL5R+9LZy8r/wBuv8A30K9K0P4h+GPECoLDVoBM3SCZvLkz6Ybr+Ga+WTb5qN7UHtWkcRNb6mFTL6M/h0Ps8EHoc0tfJ2g+OvE/hhkXTdTlaBP+Xec+ZHj0wen4Yr23wN8XNL8UtHY6iq6dqjcCNm/dzH/AGGPf2PP1rqp14T0PLr4GrSXNuj0SikBpa3OEKKKKACiiigAooooAKKKz7vxBo2n3X2a/wBWsbWfAPlTXKI3PTgnNAGhRTUkSRFeN1dWGQynIIqtf6tp2lIjapf2tkshIQ3Eyxhj7biM0AW6Kppq+nSadJqEV/bSWcal3uEmVo1UDJJYHGAKsW9xDd20dxbSpLDKoZHQ5DA9CDQBJRRketFABRRmkBB6EUALRRmigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiii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OxZmOOOp6dhgVK+lWEl+t9JZwNdL92cxguPx60AUNflvPtWl2lnePZi7uGjlkjRWbaI3bjcCAcgc4rm4b7VBZW8l7qcl4l1BeRSRSRRhP3WQrcKDk7eecHJ4HAHdvFHI6M6KzIcqSM7TjGR+BqP7FbbVXyI8Lu2jYON33vz70AcEh36vak4Ba808nAwP+Pd6rW2qaqvhJ5rLUDZrYaFHfJHDDHh5My8HKn5fkGQMfUd/RvsVsGDeRHkEEHYOCBgH8BSDT7RYmiFtCI2j8pl8sYKc/Lj05PHvQBxmo6xq+j3GqWYv5LogWLJPJHGGg8+SRHxwFwNg27s4J5JFQ3x1qT7LDc6hd28KalbCKdmgMp3Z3K20FcDAI4Gd2DnFd1JZW0vm+bBG/nIEk3IDvUZwD6jk/marjQ9LWza0Gn2wt3YO0XlLtLDoSMdeBQBytjq+u31811DJNtTUHtmtmaBYRGshQ5z+837Ruz3JHGDSx3evXmkS3UOoySM+qXEBhj8mN1hilmULGWXBY7Vzu7Keh5PWf2Tp/wBtF4bKA3K9JvLG7pjr9KWfS7C5t/IuLOGSHeZNjRgjcSSWx65J59zQBW8P6gmoaTC4nlmkAZX89VWQFWKncF4yCCMjg44rUqtb6fZ2sgktraGJxGIgyIAQgOQvHbJPHvVmgAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigDL8Q6W+r6YkELqkkdzDcJv+6xjlV9p9AduM9s5qlpPhG30qK4jinYpJb/ZkURqmyMFiOgG4/MeT/jnoaKAOauvBNndWoga4lVRt5AHaAw/yOfrSaj4SS5u4LiCYqy3JlcMONpmhlYDjrmBQP94101FABRiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiikzQAtFJmloAKKKKACiii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"},"Melanoma-Cancer.JPG":{"image/jpeg":"/9j/4AAQSkZJRgABAQEAYABgAAD/4RDaRXhpZgAATU0AKgAAAAgABAE7AAIAAAAFAAAISodpAAQAAAABAAAIUJydAAEAAAAKAAAQyOocAAcAAAgMAAAAPgAAAAAc6gAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFNBSUYAAAAFkAMAAgAAABQAABCekAQAAgAAABQAABCykpEAAgAAAAM3NwAAkpIAAgAAAAM3NwAA6hwABwAACAwAAAiSAAAAABzqAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMjAyMDowNToyOSAxMzoxNDo1MAAyMDIwOjA1OjI5IDEzOjE0OjUwAAAAUwBBAEkARgAAAP/hCxdodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvADw/eHBhY2tldCBiZWdpbj0n77u/JyBpZD0nVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkJz8+DQo8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIj48cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPjxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSJ1dWlkOmZhZjViZGQ1LWJhM2QtMTFkYS1hZDMxLWQzM2Q3NTE4MmYxYiIgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIi8+PHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9InV1aWQ6ZmFmNWJkZDUtYmEzZC0xMWRhLWFkMzEtZDMzZDc1MTgyZjFiIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iPjx4bXA6Q3JlYXRlRGF0ZT4yMDIwLTA1LTI5VDEzOjE0OjUwLjc3NDwveG1wOkNyZWF0ZURhdGU+PC9yZGY6RGVzY3JpcHRpb24+PHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9InV1aWQ6ZmFmNWJkZDUtYmEzZC0xMWRhLWFkMzEtZDMzZDc1MTgyZjFiIiB4bWxuczpkYz0iaHR0cDovL3B1cmwub3JnL2RjL2VsZW1lbnRzLzEuMS8iPjxkYzpjcmVhdG9yPjxyZGY6U2VxIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+PHJkZjpsaT5TQUlGPC9yZGY6bGk+PC9yZGY6U2VxPg0KCQkJPC9kYzpjcmVhdG9yPjwvcmRmOkRlc2NyaXB0aW9uPjwvcmRmOlJERj48L3g6eG1wbWV0YT4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgPD94cGFja2V0IGVuZD0ndyc/Pv/bAEMABwUFBgUEBwYFBggHBwgKEQsKCQkKFQ8QDBEYFRoZGBUYFxseJyEbHSUdFxgiLiIlKCkrLCsaIC8zLyoyJyorKv/bAEMBBwgICgkKFAsLFCocGBwqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKv/AABEIAm0CPwMBIgACEQEDEQH/xAAfAAABBQEBAQEBAQAAAAAAAAAAAQIDBAUGBwgJCgv/xAC1EAACAQMDAgQDBQUEBAAAAX0BAgMABBEFEiExQQYTUWEHInEUMoGRoQgjQrHBFVLR8CQzYnKCCQoWFxgZGiUmJygpKjQ1Njc4OTpDREVGR0hJSlNUVVZXWFlaY2RlZmdoaWpzdHV2d3h5eoOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4eLj5OXm5+jp6vHy8/T19vf4+fr/xAAfAQADAQEBAQEBAQEBAAAAAAAAAQIDBAUGBwgJCgv/xAC1EQACAQIEBAMEBwUEBAABAncAAQIDEQQFITEGEkFRB2FxEyIygQgUQpGhscEJIzNS8BVictEKFiQ04SXxFxgZGiYnKCkqNTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqCg4SFhoeIiYqSk5SVlpeYmZqio6Slpqeoqaqys7S1tre4ubrCw8TFxsfIycrS09TV1tfY2dri4+Tl5ufo6ery8/T19vf4+fr/2gAMAwEAAhEDEQA/APfrVDfJJI9xOMOQAjkAYqf+zl/5+br/AL/NUWif8eT/APXVq0aAKf8AZq/8/V1/3/aj+zV/5+rr/v8AtVyigCn/AGav/P1df9/2o/s1f+fq6/7/ALVcooAp/wBmr/z9XX/f9qP7NX/n6uv+/wC1XKKAKf8AZq/8/V1/3/aj+zV/5+rr/v8AtVyigCn/AGav/P1df9/2o/s1f+fq6/7/ALVcooAp/wBmr/z9XX/f9qP7OX/n5uv+/wC1XKDQBT/s5f8An6uv+/7Uf2cv/P1df9/2rlvEPi3XND0fWtX/ALLtTZ6dJsiWSZw84GMn7uByffpTNC8Ya3rOh6LrI0q1+xajMscqxzMzwKSV3fdwRkD060AdZ/Zy/wDP1df9/wA0f2av/P1df9/2rlPDvjq51j4g614au7GGBdMTcLhJSfM+YAcEccGu23DGc8etAFT+zV/5+rr/AL/tR/Zy/wDP1df9/wBqtq6sMqQR6g1HcTx21vJPO4SKNS7segAGSaAIP7OX/n6uv+/5o/s5f+fq6/7/AJrF8EeMrXxtosuoWaeUIrh4WjLZIwflP4gg1jeL/HmqeGPFml6QmnWtxHqjhIZjMylPmA+YY9+1AHZ/2cv/AD9XX/f9qP7OX/n6uv8Av+1cjB4+ubX4hR+E9d0+OCe4Tfb3NtMXR+CcEEAjoak1z4hC08YweFdB086nq8i75AZNkUC4zlmwe3OB7UAdV/Zy/wDP1df9/wBqP7OX/n6uv+/7VkX2uano62f9oadHOLq5jtzJayErCWOMsGAOPcd651/H+sp8Sx4O/s6xMrJ5i3Pnvtxt3cjb14oA7n+zl/5+rr/v+aP7OX/n6uv+/wC1cto/xAW58YXHhXW7L+ztWjXdFiTfFcDGcqcA9Ox96zm+IWsr8Tv+EMOm2PnGMyrdee+3G3cBt25z+NAHdf2cv/P1df8Af9qP7NX/AJ+br/v+1Zuj6tqtzrVzZ6laWq26wrLb3VrKXWXLEMDkDBGP1rcWRWzhgSDg4PSgCr/Zq/8AP1df9/2o/s5f+fq6/wC/7VczTQ6sMqwI9Qc0AVf7OX/n6uv+/wC1J/Zy/wDP1df9/wA1w958TLx9f1LT/D+hSamumXEcFxtfDsWOCygDovvW3478TX3hLwzJrVraQXUcG3zYpZCjckAYIBHegDe/s5f+fq6/7/tR/Zy/8/N1/wB/zXDTfEbU9O8G2HinUNHhk0y6CmUW05MkAY4BIIwwz9K7fSdVtNa0q31LT5RLbXMYkjYdwf60AO/s1f8An5uv+/7Uf2cv/P1df9/2qeS4hjgeZ5UWNASzlhhQOpJrP8Pa9a+I9ITUrEk28juIyf4grFd30OM0AWf7NX/n6uv+/wC1H9mr/wA/V1/3/arSyKwJVgcehzRvXdt3DPpmgCr/AGcv/P1df9/2o/s5f+fm6/7/AJqkfEtifFn9gRyK92tsbmUKw/dLkAA+hOenoKq+G/EGo6vf6tDqejS6ZDZXHlW80jZFyvPzD24HTI5FAGv/AGav/Pzdf9/2o/s1f+fq6/7/ALVa8xTj5hz0560NIqjLMAPc0AVf7NX/AJ+rr/v+1H9nL/z9XX/f9qtb1cfIwP0NcR8Q/G2q+CbWO8tdLt7+1fO/MzI0eMcngjGSKAOt/s5f+fq6/wC/7Uf2cv8Az9XX/f8ANU9J8Q2uq+FLbXYji3nt/OwDnbxyv1B4rl/A/wAQNS8X+INTsJdLt7KPTX2ykzMztkkDAwB255oA7T+zl/5+br/v81H9nL/z9XX/AH/arG8btu4bsdM1yGi+M73UPiRqnha7sYIlsIPOW4ilJ3glcDBHHDfpQB0/9mr/AM/V1/3/AGo/s1f+fq6/7/tVoSLu27huHbNHmJu27hn0zQBV/s1f+fq6/wC/7Uf2av8Az9XX/f8AarYYEZUgj2pN6lioYZHUZ6UAVf7NX/n6uv8Av+1H9mr/AM/V1/3/AGq0JEOcMpx156UeYuAdwwenPWgCr/Zq/wDP1df9/wBqP7NX/n6uv+/7VbLBVyxwB1JoDBhlTkeooAqf2av/AD9XX/f9qP7NX/n6uv8Av+1XKKAKf9mr/wA/V1/3/aj+zV/5+rr/AL/tVyigCn/Zq/8AP1df9/2o/s1f+fq6/wC/7VcooAp/2av/AD9XX/f9qP7NX/n6uv8Av+1XKKAKf9mr/wA/V1/3/aj+zV/5+rr/AL/tVyigCn/Zq/8AP1df9/2o/s1f+fq6/wC/7VcooAp/2cP+fm6/7/NTEU22pQxCaV1kRsiRy3TFX6o3H/Ias/8Ack/pQAzRP+PJ/wDrq1aNZ2if8eT/APXVq0aACiiigAooooAKKKKACiiigAooooAKDRQaAOL+LXHwt1r/AK4j/wBCFJ8JR/xazRR/0yb/ANDNYvivS/iD4ha60+XStFuNKaVvLRryWMyJn5d+32xxVbQ9K+JfhzTxY6RpGgw2q/cia9lcL9M5xQBzD2EOofEv4hi5Mu2KxkkVUkKfMAuCcHnFRDxPqsPwO0FWu5tlzqBtricyEMIg33N3UA9M+graHgvxyNQv70aFoYudRRo7qQajPmVW6g8+1Og8HeN7fw6+gr4a8OPpjv5n2eW8lcK3qCeQfpQB2fhTQtU0jxNqV1JcWqaRfRpJb2EErP5LgAFhkDg+1aHiy93JaaTFbzXT3kgaeKBQWEC8uTkjgnC9e5rjNF0n4keH4PJ0zRdAjXAUGS9mkYKOigtkgew4pBpPxMGvnWhpei/bmTyy39oTbdn93b0x+FAGP4Pux4K+NV9o8kE1jp+tjfbwzqF2nkp0JHXcv5Vd+LiNL8SfBiRyGN2mwrgAlTvXnnio9c8H+O/EeoxX+s6FoM9zCMRP/aEy+X34xjHPNGpeD/HusahbX2paLotxc2oHkStqU4MeORjB9aAGyu/hb48WUeo41y41NVEd3PxNahsjChflA49OlQ+F45NK/aS1eLVAY5LxZWt2f+NTtIwfoCPwrRs/DnxAstabV49A8Oy6iwwbqe8llkA9AW6fhUusaL8Q9faFtV8PeGZpbc7oZhcyJJGf9lhyKAPUrh7dQi3TIA7gIHPVuox715BP/wAnSQ/9eo/9FmtKHT/idDcR3DaToM80QIjkuL2WQpn0z0Pv1rKbwZ48bxB/bh0XRRqna6GpT7xxjA56Y7UAReK4JNW/aP0iPSwXktEie4Zf4AuWOfwI/Omatbz3n7TjQWt5JZSyWRVbiNVLJ+56gMCK2dK0f4i6LNcTad4f8NRz3Lbp52upGklPqzHJNZx8FeOz4g/tz+xdF/tT/n6/tKfeOMY69McUwO80xJNF8E2eh3d8LbVBYSBZmOdhUYMh68AkHNcN8PtSvLDxrZaB4p0+S01SG3lEF1ExMd6vXc/Zm4yH/A4qePw58Q4766vH0bQ57i7gNtNJPqEzloz1UZ6D6VLZaJ8RbC+hu7fRPD5nt4jDA0l7K/kx91XOdopAbPxk1W/0zwZCumyyQC7vI4J5ozhkjOc4PbPArM8yTQvjzY6JpAZNMvtLzc2ysSgK7sSYPRuAM9+9S6lbfE3WNPlsdT0PwzcW0ow8b3D4NVNP0X4jaZqEl/baJ4fN7JEsLXMt5LJJsXooLZwB6UAVvhlo9hB8V/FvlWyp9hm222Cf3YOQQOf510/xn/5JXqf1j/8AQxXNaT4Z+IOiavc6pp2jaHHeXRJuJG1CZvNP+0Dwasa9o/xJ8S2Is9Z0fQZrbOTCt9KisffGM0ARX9xBB+zHF9oIHmWMaID3YuMf59q56a81nwp+z7pEQeW0OoX22WQEq0cDszYz1Xdjt2NbMfg7xytpaWknh/w/Pa2ZBt7e4v5pI4yOhCnj861dUsviXrOly6dqmg+GLm0lADxPO+CB07cYpgU9d8N39to/iK9klso9Cu9K3xafDOz7ZUUYkXgDBHX14zXNQ3B8Nfs+wanogNrqF+4gurqNjvEfmMMj06YyPWui03wz4+0nT5bG08P+HTbyxmJkmvZpfkPVRuzhfYUyy8J+OLDRZ9Ig8M+GTYXAxJBJdSuCPTnoO/H1oA1rHT9Z0aSXxDpUtlHpkmj8WMczSGaVUysoyBzjr61Q8A6TH4s8MaN4im1m6t9Ts72SW7nST5pyW5jfP8OMYH5Umh+HviF4cj8vSdB8PxLgqoe+mkCA9Qu7O0ewxVaw8HeN9L1KS+0/w14bglkkEjIl5MIyw6N5f3cjtxx2pAVvDuiaXcftA+JILu1RoLdFmjV2OFc7Duzn1PequhL/AMSv4ow5YxwFvJTccR4MmNvpjFbMnhnx9J4jOunw54bGosoDTLdyjdjoSo4JGByR2FVbfwT45tU1FYNB0NRqilbz/iYznzsnJzz9efemByREmnfDnwbrNrc3K376kyGbz3J2hvu4zjHH6mvR/FKXMnxb0v8At0SSeH2spDFGuWTzdpyXVe/TBPHSuff4feMZNLtdObw5oP2OzkaW3h/tGfEbHqRzVfxDpHxUm8RQ38cYsZxai387TpnkQoDnB4Jznvj0pAdh8GNCvNJ8O3lxqdnLbzXN05hM5PmNCD8u4Hp1OO9dN4k06HWL61066UNDdW1zE4PoVArg/DQ+MFnayrOlhfKzfI2pSlXH0wAcH3qxd6b8T7zVINQm07RftFuCIimoTKq56/KODnvQBlfCaTUIZdT8C3qPt02982R2HCxZzt/4EwU/Qmj4b3U1n4k+IN1bp5s0LySIp/iYM5A/StiOw+JkV9e3sGieHYrq+VVuJo7qRWcKMLyOmKztF8JePfD2oTXuk6HoUE9wSZmOoTt5vuwJIPWgCp4LtNc8T+GdL17TNRtodRt9Rea9vJ7hi8qk4aJlxgLgjA6DtWlp0nlfHbxfI9yLQLpOTcEZEXEfzfh1qtYeDvG+l6lLfWHhrw5BLK/mOiXswjLZyG8v7ufw4oHhDx2NYu9UbQdBe8vY2iuXe/mPmoRgqRnGOBx2xQBy15qd1aQeEL7Tb+edv7Wa3OrtmN75TIu4FOcoMkAtz7Cut8bWkdz8fPD1q5lSG6tv36xSsnmffHOCOwx9Kz/+FdeKxp9vZf8ACK+HPItpfOiH2+fKN6g5yOg/IVoXnhb4gX+vW+s3OiaE2oWyhYZhqEwMYHYDp3P1pgUfAGsajpXg3x59hkllbTLiU2iSMX8v744zzxgflVabULvR/h14O8QadNK+r3V8PPnLlmud5O5X/vA+nbtWzoXhn4geG5bt9I0Lw/Cbw7rgNfTOJTk8kNnnk/nSWvhfx7ZTWz2/h3w4FtJGktomu5THA7dWRDwp/lSAorp8OpfHjxHZXPnraf2cZWt45mRWYonXB9Tn61y1kstz8DNQ1Ke7u3u9P1AR2shuH/crkZC8+9dn/wAIn4//ALfudaXRNDXUbpGjmnXUJgXUjBGOmMflgVUj+H/jKLRJdHj8O6CunzSiaS3Goz7WcdD1pgbvifUz9j8EyXGqTNPOsbHSo4w51FmQD5iSAoGeSePbNQ/BS8unvvFNjPK5gtb791CXLLDlmyqk9uKpXng/xzfrpovPDvh6U6WAtoxvpt0YHQZByccdfStjwP4Z8T6D4plurvQtEsLS8JN29ncyMxOCRhTx1pAen0UUUAFFFFABRRRQAUUUUAFFFFABRRRQAVRuP+Q1Z/7kn8hV6qNx/wAhqz/3JP5CgBmif8eT/wDXVq0aztE/48n/AOurVo0AFFFFABRRRQAUUUUAFFFFABmjNcp8RvFQ8IeCrzUI3C3bAQ2oPeRuAce3J/CpPh74n/4S3wZZ6lIR9p2+VcgdpF4J/Hr+NAHT0UUUAFFFFABRRRQAUUUUAFFFFABRmiuE+Kuu614V8MnWdEvY4ykscTQywK6tuOM56g0Ad3mjNeR2niDx1qHwyXxZZ6zYtIsbyyWkliACqMQcMD1wM10Xwt8eSeOtDuJb2BIL20kEcwj+64IyrD078e1AHdUUUUAFFFFABRRRQAUUUUAFFFFABRkUhrya4+IWueMPHEnhrwK8FpbW5P2nU5UEhCjglVPHXgZ6n0FAHrOR60uc1xt5ovi3TNLkn0jxK+pXkaFvs+oW0eyU+gKBSv61r+Db+71Xwdpl9qJzdzwB5flx83figDbooooAKKKKAExjoKWiigAooooAKKKCM0AGaM14n8TPiD4q8F+LYtN0/UIJYJoFmHm2ikrliMZHXpW54t1/xt4H02DWXubLW9OLKs8ZtvJeLPQ5UnjPGfegD1CisPwl4psfF/h6DVdO3KsnyyRv96Jx1U1uUAFFFFABRRRQAUUUUAFFFFABRmiue8b3Wo6Z4Uv9T0m8FvNZ27zBWhEiyYGcHP8ASgDoc0Zrxz4ceLvF3jq21Ga51y2sBZFOVsVYEEE5JJ4xiuw8LXfihPFuo6Z4lvLW9tVtY7izuLeDy94ZiDkZ6jAoA7OigUUAFFFFABVG4/5DVn/uSfyFXqo3H/Ias/8Ack/kKAGaJ/x5P/11atGs7RP+PJ/+urVo0AFFFFABRRRQAUUUUAFFFZ2t3d7Y6VPPpdhJqF0FxFbo6rubtksQAKAPPPFusaDrnijUtM1qWQW1hZvbRbbaSVftEg+ZwVUjKrgfia5H4FeIn0jxPeeGrwkR3eWi3griROOh6bl7e1eq/D2HUrXwylprely2F8jtJcM7oyzO7FiwKk+vevN/Gvg/xXefE0eJPCmgTKInjffJNGnmSLwSBu6EAUwPdRRVTTLme80+Ge7s5LKZ1y9vIwJQ+mQSDVukAUUUUAFFFFABRRRQAUUUUAFecfHb/kl83/X3B/6FXo9eefF7TNZ8ReGDomhaRNeSSSxytMJERFCnOMsev4UAef2On+NLj4HQnSL2zOk+VIZrWOIrcGMOdw3kkHv0A445rsfgfq/h668P3NhoVnLZ3cLCS6SaTzGkJGA4bjjjGO1UtFj8c6P8Nk8M2vhCT7Z5ckP2p7yHy1DkndjdnIz0rY+E3w2uPA9rdXWqSo+oXiqjJEcrEi9BnucnmgD0cUUCigAooooAKKKKACiiigAooooAx/Fs1xb+DdYlsgTcR2UrR4POQh6e9eN/s6qh1bW2bHmCGLB743GvepEWRCjqGVhggjIIrxiDwV4h+GvjmXW/DOntrOj3AZJbWFgJkQnOAD1wehH40Ae04pFRUGEAA7AVx6+K9Z1eMQaH4Z1K1uHGDPqkYhig9zyS+PQda6qyimgsYYrqbz5kjVZJduN7AcnHbNAE9FFFABRRRQAUUUUAFFFFABRRSGgD5y+P3/JRLL/rxT/0Nq9e+IqRN8J9YE/C/Ysj/e42/rivN/in4O8V+MfGEWoaP4fn+zQW4h3TTRqXIYnIG7pz3rpvFNn418caHHoNvoY0O0cp9quLy6RywXBwqoTxnnt0oAzP2dmlOia0rZ8kXMZT0ztOf6V7LXP+DPCVp4M8Ow6VZkyEEvNMw5lc9T/T8K6CgAooooAKKKKACiiigAooooAK5z4g/wDJOte/68ZP/Qa6OuZ8fJf3fhG/03StNnv7i9geJBGyqqkjHzFiMDmgDwPwDP4jh8D+Jj4bht3jKJ9rkdj5qR7WzsHQ8Z719LWJQWNocqGMSgE9T8vQV458NNC8W+B7fU4NS8IXF9HfBRiG6g7AgghmHBzXZaK3irWPHFtc6zoH9j6Pp9tILdDcJIzythQTtPZc4oA70UUCigAooooAKo3H/Ias/wDck/kKvVRuP+Q1Z/7kn8hQAzRP+PJ/+urVo1naJ/x5P/11atGgAooooAKKKKAI5547aCSaZgkcal3Y9FA6moNO1K11bToL+wlE1tcIHjkA+8DWD4w1CF5LTQBtln1JsPAXKb4R94bsHGeB75NcD4Wvpbbwp4l8Fz3stjPYs4sriJGk2xMRwCB820nnHY+1AHsu4UbvTmvGCuq3vw/i15bWWPUtB1LcVt55DDfRqwD7QT909R15BxWl4lt0sNd8Iw3UksP2iS5lvY0lk2gMu7acHoGJA+lAHqu72o3V4L4I1CaPW/BrS3l4zXaX0V8JnkIIBIjVgeBwOKpaDcedPoC3d5ehJdUvUud0sozDgbAxz930oA+h91V5NStYdQhsZJVW5nVnjj7kL1P05FeHWOqapN4M8JLd3l0mnNf3FvezyRyP5RyRF5gBDbRngk4HFdDFpsdl8S9AOpTzXyroskf2+aJk851Y4J9Dj3/nQB6zupA4ryLwF4cTxV8O7g3V7fpf5ubaOU3MimPLbkbbntwQfSun+Gdvez6HHqOsxNFfLGLIqXJ3CIlS2M9Scn6YoA7iiiigAooooAKq6hqEOmWE15dbhDApeQohYgDqcDmrVYvi6eO38H6q8zBF+yyDPuVIA/M0AV9O8daDql3ZW1rdOJL+MyWvmwsgmUdSpIwa6DdXgvhQy/2t4D+y+bqk0VtKsts8RVdOz/y0yAOe2GyfStHw1c6w2saQt1JdNfGTUP7dWQvhUGdm4HgDptx26UAe07qzLTxHp19r15o0ErG+skV54mjI2q3Q5PBB9q8l0hNQf4IX+raVcX8mswpPAR5shdI/PycKe+zkHrg1Sle7i1bxhP4Tju90mi232eWJHJbGC+1iPvAE989aAPe91AbnFeGayJrT4f2V7aa3d3S3WpWkqKkUkX2fjEijksRxlgehr2TSNMttLsfJs3leN3abMsrSHLHJ5JzjJ6dqANCiiigAooooAKKKKACkZgoJJwB1Jpax/FVldal4T1Sz05tt1PavHEc4+YrxzQBAvjXRHt57mK4kltIGKSXMcLtECOCN4GDz6Vu7gRXnXw81fTrH4d6foeo28kN/ax/ZLjTnhPmM4OD8uOQc5z0561y+tXWvp4w1GOJ7wasNctVsI13bTabTuIH3SmOp9aAPWtH8Radrst5HpszSPYzGC4UoVKOO3Nam6vBoZ71Z/EJsmmSzfxVG188asCbY5Bb/AHMjkirF3fagmh6PJNcXcVr/AMJQy2bln3Gz3dz1KfXtigD3EHNLVPS9Pg0vTorS1aRoY87TLIXbkk/ePJ61coAKKKKACiiigAqlq2rWui6ZNf35dbaBS0jqhbaB1OBzirtcx8RJo4vh3rfmNgyWckaAAksxUgAAdSaALGneNtD1O4tILe6ZZL6PzLUSxNGJ177SRz9K0tP1a01T7T9jdn+zTtby7kK4dcZHPXqORXi0VvN4g0H4e6Voyu99Yypc3MioQLWNepY9ifTqamstUcaHqFuW1CZpvFM0Vvtd/LCbRt8w4JMfXAGMkdaAPbt1LurwTT7+7m8M+BBqlzeCRdakhuC7SK/lAnh++PujmovDmoXUWreHpkvLwzNrV1BIJJJCBD/ApB4C88fWgD38uFUknAHUmq9hqNtqdkl3YyrNBJnZIvRsHHFeO+GbTVNXt9Yl1jUrw6nEL23utLe3f98GBKEknGBgbcD2yaoacbmPwf4JtI55tP064WaG+n8mRhFcFcJvUEEEdsnAP0oA963UoOa8nis/tXxQtNGv9SvZ4ZdBVZZQzwmaRXBDHBwrYGeucV6uowoHoKAFooooAKKKKACsK68Y6TaeIF0SV5zqLxmVIEgdi6D+IEDBFbteM+M5PP8AjXbi21E2BXSZImutmVjcliFJxgZB+tAHren6jBqdil3abzE5YDehUggkEEHkcg1Z3V5n4xuH1TQ9P8U+GVuLg6Rfrujj3KLuPcFf5e43HOSOxNYviu01DQ9Ssra5kvE03+yLqWNoncg3x+YDIOd3Pyj8qAPVP+Ei07/hJDoJlYaiIPtHlFDgx5xnPTrVnUdSt9K06e+vWZIIF3yMqliB9Bya8h0u1vNZ8e2Flr5mW9uPCqw3DjcjLKWZvvDo4BB65pnl6h/wp7VrvUkuoNQ02BtNhk3uGlZJeZFwc5PTPse1AHs8FwlxbxzxElJFDqSMcEZqTd7V88eLtRuPtN7Ja3d4H/4R22eIxvJzPlORj+LH41qeJpbnV9ZmtTr8CPcabZNbtPffZxaMTlzgkbywB6ZPY4oA9zBzS1BZIsdlDGjKyrGoDL0bjqKnoAKo3H/Ias/9yT+Qq9VG4/5DVn/uSfyFADNE/wCPJ/8Arq1aNZ2if8eT/wDXVq0aACijNFABRQTSZoACilslQT64pNijoqg/SlozSAytS0JdR1CyuWu7mFLUMGto3AinBxw645wQMYxWpsVvvKD9RS0ZpgJ5af3F/Kjy4/7i/lS5ozQAmxcY2jHpil2juBx04ozRmgChrGmf2ppclnHdXFiXIIntGCyKQQeCQR271Zs7ZLO1jgjztQYyTkk9yfc1NRmlcBaKTNGaYC0Um4UZoAWkIDDBAI9xRmigACKudqgZ64HWjauSdoyevHWlzSZoAAqjoAPoKAqqMKAB7CjNGaAE2JjG0Y+lO4HSkopALRSUZpgLRSZozigBaKTNGaQC0UmaM0wDYu7dtG71xzRhc5wM+uKM0UAJsTBG1cHrx1oKIRgqpA7YpaM59aAFopKM0ALRSUgOaAHUUmaQEHpSAdSFQ33gD9RRmjNMACKudqgZ64HWgIo6KB+FGaM0AIUQ9VU/hR5af3F/KlzRmgA2jOcDPrRtXGCox6YozRmgA2rnO0Z9cUtJmjNAC0UmaNwoAWik3AUm8eooAdTTGjZ3Ipz1yKXcPWjcPUUrgGABgAAfSghT1APfpSEj1oyPWi6DUXauc4GfXFBVSMEAj6Ubh60bhRdAIY0x9xfyrldb+H+l67q0t9eEs00SxOkkMcgCjP3Cykp1/hPvXVFh60bh60XAis7aKys4bW3XZDCgjjX0UDAH5VPmm5FIWHcii4D6o3H/ACGrP/ck/kKuBgehqlP/AMhmz/3JP5Ci9wG6L/x5P/10aryyK7MFYEqcMAehqjov/Hk//XVq4rxB8NNQ17xHe6nF4lvdLjmZdkFsx2kBQNx56k5/IUwNLxlquu+Hri3vLC8gksp2kjeCaDLRsIXdSrA8jKDg10Phu+m1Pwtpd/dFTPdWkU0hUYG5kBOB9TXkmseCE8N3MMl94zub+5CTGKxuXyZP3L8gZ7A5zXqXgv8A5EPQf+wdB/6LWgDZl4ib6V5Tc6te/bCiXM5G7n5yK9Wl/wBS30NeRSzpHdPhd3Jwa4cZJxSsdmFipN3RI2q3xbaLifGeCJD/AI0z7dqJfd9oucevmN/jUSXW9iGjCqo4IHU0NcyBFIUjnPTrXnOpLueh7KKfwlyPULxT+/urgDqP3jc/rTpNTuGK+TLdNuHOJmqqZtyhmjc9yCOtVZbyR2CqjKOyrwaXtZ9xxoxk9kagvpISpF1dKWJHzzsQKi+0X7qxN5Nu7ETnGPpmqVnLGJmF2PlJ5Vhkirkv2eYf6MNj49MUvaSfUbowT+EQaheRJi4urrhslfMYceufSpJry6khD2l1cEDjiZjVYPJuIn3EY25xnPtROrR5aMHA6qnaj2ku5apQtshf7Qvgyh7u5DdSDKw/rUhv7gZkiuboOpHyGZjx+dVJLjfCrALujGCD1p0jxsoaN8u6/MPSp9pLuUqMP5USDVZ3ulxdXSjevBlb1+tewV40nlNPF3KsudvfmvZa9LAyck7s8zHQjGS5VY57xjNJDpkRikeMtLglG2k8GuLS+uQ+Hu7geo8412fjM40234z++/oa46VEMmBg+w708Q5KejFQUXDVDxc3DSKFvZ8d/wB8f8aS5mukOUvZyp7iVv8AGmKAFI+XIqCQEOAW+XGAO1c6nKx0KEb7E73d4LkbbqcoRwPNal+1Xnmgfa7gg54ErcVRf76srldueCeKjW/MXfnPJPSm5tPc09lF7I10vbgNg3Vzj3kanC9uurXM2P8Arqf8ayE1aFpVAkGcZPepBfxO7KHVv92qjUdtyXQ8jYF5Ljm5nz/11ah7i52Bvtc4HUjzGrKjudwKxjfjkn0qdZ22lctszxu/ip877kOil0L5ubohP9KmHH/PQ077ZcrCU+0zMDxneeKqJJuj3HIIBJpYGddwbgbsnPWjmfcnkj2Om8K3Mst5KkszvtiHDMT3966dvpXLeFTu1CY4/wCWX9a6o+9d1J+4cFVJT0PKtYvbtNevESe4C+e23bMQKqi8u0yWvLnp085v8aXWiX8QX/YrO2Bn3qkzNlhnIU8CvDqVJ871PoadGm4J26Fw3l5tbF5ckjn/AFzf405L+7PBvLgcf89W/wAapr+8RhnjH41EGZE65A70vaz7j9jT7IvNqF2OPttx/wB/mqs2o3uG/wBOuM54/fN/jVWa5WPq4HuaqtcKOWPBpe0n3NFh6f8AKjT+23oUH7ddA9wZ2/xqX7fesvy3lxnGf9c3H61lLcAlsD72MA1OJvLXjqD09aFVn3YSo0/5UXze3m3Ivrr3/fN/jUbajdkDF9c+/wC+b/Gqyy7mKAgKOc560mCCUBB9D703Un3JVGnfZEo1G834N9dcnj9+3+NK+o3yN/x+3Jyf+ezf41VdD5gyccZHvSsRkE561PtJ9zT2NK3wo9xg5t4yeu0fyrkfE8txFrK+RNIgEanCvgd+2a6+D/j2j/3R/KuO8UlRrQ3IW/dL0Hua9vENqnofOYaKlVszIku7l5gRczqvc+YxH86kF5cx/wCrvZH/ABb/ABpLeRY8pKqhWOAGGDULW4SZiCAM8L6CvPUpdz1PZw7F77bO0fzXEwbv+8Ipwu7kIP8ASJip6Zc5FVI1yfnH0B704vt4O0Y7dc1pzy7k+yg+hK09yrcXU4Y9BvNSpNdLH+8uJc9m8wjH4VAZFf5ZD93kMT1pVZ4pWAPQfxDIINLmfRh7KPYXzLrG77TcMxbAZXOPyzUiXN4pVnklJPOSzY/nRJGEkV/4SAPk45pm9w2yPhQeQOcf/XocpLqLkh2JJby5e6BkuJBjuHIH6Uv2i48xj5twi+7M1CBJnIAQHHJAxk1DOJEJRPOxgcA5P4UuaXcPZw7E8NzeJJvWeWSPH9810+gy+dpu8lj+8bqc1yMcysV+8p6A5/mK6zw6oTSsBg37xjkV04eTctTlxUYqOiLOrHFi2PUfzrB3sf4j+db2rf8AHg3+8P51g4rStuY0fhFBz1J/OlwexP50gGcelIcqfY1jdm1kBYnjJ/Ogv2yfzoGKaw3HNDbGkgPzHqR+NOJI7n86gmmaIqFXdnvUoO5c0kxuKFPPcj8ab0HU/nSHgbqRmyuaGykhCx9/zqJ2IGcn86cT61HI30qC1Ev6Cf8AiaLyfuE9a3J/+QxZ/wC5J/IVgaA+dYA/2D/Sugn/AOQzZ/7kn8hXbh/gOHFK1QZov/Hk/wD11auU8e2nju6dV8Lahb21gwAmMMeblfUrk4P4YNdXov8Ax5P/ANdGrh/Efxa/4RzxVeaK+hX2oSQbXV7RN3ylQeRyeua6DlOR0rwp4esYdbvL+/urjXbdpEt5b52SaTMBzmM84OX556da9c8F/wDIh6D/ANg6D/0WteX6r8R7XxU0dpP4SvrS42TeTeXkJURHyXzg4HJGRivT/Bf/ACImhf8AYOg/9FrTA2pf9U30NeQzTKl0cop5POK9dl/1L/7prx8FppZN4XCscknpzXnY3ZHdg1qwF4VJ2lWPIIYcULcneEkKsD046e1Omhi3ZbCgngpSIYkysUQLHozH9a83qeloW4tkAfyY9zEbgWB/KqXlRTLvnlWFuuDgUk8s0MTOZfmI+XB4Armri6d5DvYtk9T3olboa0qbepum4s0TKncynncc7qje9jwJIZTCQfmQdvpWDNIVG/GAf7p6VFFcZP7xiee/NTfQ6vYnWPc3MDRiZVKPySGzkHvUzyeSgktm3q3DDOcVz1neiVhFcuxQ/KvOdvp+FasWbOUpKow2GHpQZSg0XHCPCGVBjOMYwfrVaWJVfeCG7ZHepnfbG/2c7jjJA6/hUeW8lYXXYB0IFKyJjdEKRtHcxk5UM6gcdea9urx2GcXDRLKqja4wx69a9hFengNEzyswveNzmvG4zplvyQPO5x/umuOz028jk5rsvGpK6XBgcGbBPp8prh5JfmADHHIGB1pYh2qE4ZXpiTS4YMAOKrXV15cJYthVHOD71bZd0ODx0JJGOa5XxBqZtbE/MAzEkL681g7o7qcVJiav4hS3ykGC+OMjOK5mbVbublrhgvsxFZsty0jNI4BOfWooUllMn2ceZsXedzdBUO7O33YrQ0hdSr9yZ8nqQ1LHqEoz+8dT1U7jzUVnqkEVrtktBPJ5gxkdabZQHVtX8tF8hCGIx/D7Ucg+Y07fWb21bdDNMR1+YnBra0vxiDiG/VlDHhh/WuXs5gHe3u5mVYwwU7evHeq8UivJMJR+9UdOufSlqgcYzWp7LDOjKCDvRhgFehqfzGWRl65GQTXHeFdXkks1hlwzRnuegrrNzMqE881pGTaPPqU1BnT+E2D30uP+eX9a6xulcj4R/wCQjLt6eR09811x6fhXp0H+7PIrfGzx/XcjxBfN/wBN25/Gqg/123O5QOoq7rRH9u34PP79uPxrMjO3dnseteFP42fTU/4S9CYhc4ViPeqd1MUDL0HsanZxGvuTXP61fhY2xlSxxkelCVxpa3KN9qAuRJ5MpURnnPesZr2cnid1I6ENQH3SmLgiTuagkUPP5cShQPTvXTGCsTztF+11y4tpUM0jSLnktXSW2ppOA4fpz9a4crk5JIAPFXLS8+zzIc7Ez0x1qZU10NYyud+syyMCi5GMkVOc5XYNoHX3rnrW+bAAOFHQitqC6EiKZOvsK5mEu5NKfnzjJzx7U1yOcAnPtTSSQVU5HU04tkDLbcDOPWgZ7jB/x6x/7g/lXIeJkLa37CJf5muut/8Aj2j/ANwfyrk/EzldaIU4zEv8zXuYj+EfM4b+KZTQu8QcHPfGKiRHDbgAD05NO+dmGc7cZyDjn8ag3spBGcbj7152lz19bErtsc9cgZGOgqld30drGWdnY/w8g5qLUb42ycAF2GcdhXOSzPcSHfuLdcdqxnUtsd1ChzK7Ldx4huTMBEAAMcZzVqDxFI7AXSbgoGXBOawI1fzAQN7D+HHH50sm5Tlcn3xjBrFVJHb7CDVrHb2d9BcqDDIfoexrSgKhCJGI3dWWvPrK9kt5fMjIwDzzwa7KwvPtVsjxsDuwWUHoa6KdW552Iw/JrE0ZE8vJRPMXb98jkfiKasp6g7WXjNWWuiF2pEox1I6H8Krkxs27OSevy4ANbPyOD1HLtlwrAq7dHHBrpvDqsullXDAiRhz161zZEmOVBQDOc5rpvD0jy6Xuk672Ayc4FdOG+I5MV8BY1X/jwb/eH86w8ZFbmq8WJ/3h/OsToK0rfEc1L4QAAFBGetKKG7CskbDBx96kb2pQMDJ5pCcZzyOx96GUNPI6A0xuOnFOOQFZ+M/pTWJzx8wqTRETbipyeB1FRCTOQ3HpTpclsqenaoie561FzVK6FZyeO1Qu2O5JpxHBqs7YY+tRKRoka/ht92tKP9hv6V0s/wDyGbP/AHJP5CuX8M862p/2G/pXUT/8hmz/ANyT+Qr0MN8B5mL/AIozRf8Ajyf/AK6NXCeP/GGiwao2iQaHd6xriqCotQY2iz0Pmr8w/Cu70X/jxf8A66NXnfjXxB4R0DxZcRaj4dutWvJFSa8ngiLC3TGFyfTAJx/jXSchFp7eNj4V1FvGRsYrE28v2aGd990D5bYG4cE9eTz1rvvBX/Ih6D/2DoP/AEWteV6vrfhTVNUSw8GaOt09vDNPc6jEGEduvkuMZ7kkgeleq+C/+RD0H/sHQf8AotaYGxN/qX+hrxicEvIbeL5txJYn3r2eb/Uv9DXif2l/tbxpheuGwPWvPxuyO/B7sk8lpSpYltwwT7VNJD5EZHm8sOABUCZYxmJzuH3+PWnPMzSlWHI5Ga87Q9JKTKGoXJXMTHao64HU1lCzkugzxRsdp7HrUupyl5ixI5brV7RLq3gys0mBnk9qlLU7HeMNDJigdyyspHsRVOVWDMAcA9K7KL7OJZrlBlzyox0HSuVuEEl45U5UnhqpxSRcKnN0GxNztVNwOO/U10VpM7wpFKxIQcZHT2rnApEgK53A8VuWTEsd/XHpWRVS1rmgW+YtEckjtT5J5Gj8vHA6U0RKsW4Z4746VE8hb1GOvFBzblkqkrQYXneM47c17LXiiL+/gZnIw6/KfrXtlepgdmeRmHxROd8Ypv0uEY483n8jXBspBI+9tPH0rvPGR26ZAQcfvh+PBriJDvVlHynOSc9qWJ1nYML8BUvLkpZlWBGc/TivLPEGsfbLsRIWPlkqnH5mvTNWQy2TeUBkI38q8dmYhpPOjJbHXptrDU9OlZR0EVjHl15IGCPSnrKYbYSxzAPJlGjx0FR28zW8hcIFIBHzfMMGrUUdsIoXmUgM2HCtyPcUzRsu3CWSC2u7CUrMjIWtz6gckGo2vJ4lnS2nZrcyefIDgfMTwfWq89pHahP3oyHPQHJU8g5qxJHHbzeZbziVZISGbB5zzgj1qdbjWxa08wzRyveMpedSxbacoR0/M1SsLmKKZmYb5RwqnoT0NUoLm5RGiibaj8Hmr2gaU02pL5gOM9u9EtECk+p2Hgy2MAdz91sY9672FyVVf881i6bYx2sQCjkL90fWthCqoSfujBPqBTgrLU5K7UmdJ4RQpqU27/nj/wCzV13+Fcj4QkL38q9VEWR9MiuuavSo/AeNW+M8e1/J1u/2j/lu3P41R8sBdoGQe+a0tdJbXL3PP79xgfWqsallVB17CvDqfGz6Sm7U4+hRmYSRNgcrxkVyGsyL9oCuWUY4OK7aSAfMFx71yviPTQ+2V+iHkg44p09zRSurHMiNEYnls8knsKiBIkZY5PLU8nNWZHHlBfuYPysf4h24qGVd2GJCt0JrrMbMgYEPjzA6g8Z/pUzNGqKcHJ7sOlNZDuO1hnHORUIDD5pXwB0qlZod+U0rLUHLGKV8kdK6XTbsspVnJ7DiuOtWH2mPDDO+uotT86Z+Xa2T71zVYpM3pyutToUYgbl49aklGYxtGG4wPxqGDO3kYXrT3KuhJPBIrmLPdbf/AI9ov9xf5VyfiRQ2tAsSuIl5Az3Ndbb/APHrF/uL/KuR8T4Grnd/zyXHPua93Efwj5fDfxTKZF2D5tz/AN7GDj6VAispO1zHu71YR4wBvJOeAQe/pSS2uwbsfL1ya81o9hPucvqkTPPufLADrWdnarLvYEjnjrXR6hZNLGfK5PUrXPXiKoLEYPYtXHJNM9ehJSjYjUBGijiJIJPB+lE0AVTuRsgcsO9RLE8pVIxjJxwM81GYrqOcpEzO3pnGKSZ1KIiQGNN7Abs8JntWzps5S4Mijb0yuMYrM8u5OGndAwOOcEmrscc8XDkHdzkDtTWjujOsk1Y7S1ujGisjYBGdw5/nV4SPImDIQnYbRWFpT5t8FfnXoR3FakE7vG2fpuPauyMtDwKtNJiFJOHi7ZwynlfXiup8NNv0jOAP3jZx3rnVQRRMU+WQ8HPcV0fhxi2lcjbiRh+tdeG+M4cV8CLWp/8AHi2fUfzrDXceW4FbuqnFi3+8P51ic7c9q3q/EclLYF9e1RzSMFJUZPanjpnFNKk5z2rBp20N4tX1K8WoRSSCJ/3THsOc15/8QvFni/RnMWj6NtsyV/01ZA2c9sfw/WvQVt4/N8xRlh0PpUrgNHlwCGOG4zn86cHbc0lbocVZ6/4wext3/wCERhm3Rg+YdTUb/fG3ipm17xhjnwhAP+4mv+FdVNItvHuOEQdD6CoYbpLlfMibcvrQ5xvaw4wluzl21vxdn/kUYRn/AKiS/wCFQtrXi3P/ACKUR/7iS/8AxNdawLZA6moX+Thqzbj2N0pHKnW/Fx4/4ROEf9xFf/iai/tfxWW/5FSHP/YRX/4musJzwPzqtJgHA4PrUOUexST7kfge/wBen8ULHqmhR2VuYnPnLdiQ54wNoFegz/8AIYs/9yT+QrmPDX/IcUf9M2/pXTz/APIYs/8Ack/kK78Pbk0PMxX8Qj0X/jxf/ro1cRrEnjm18RayvhbQtLu7C5kXfPeSFWc+WqkfeGQB/M13Gi/8eT/9dWrjPEfhjUvH2u3ltLrk2maPp7rEtva/fmkKhizn0+YAD610HKcpaaf408O+Hzps/hzSdM0lo5ftVxZSF5X/AHT8tljwWxXqfgr/AJEPQf8AsHQf+i1rz288J6j8P9OmW116fUdI1COW2mtbs/NGxicq6H6rgjjg16H4L/5EPQf+wdb/APotaANiX/Uv9DXjrEtMxMkY2kgsB0NexS/6l/8AdNeOPbLmTG7OTj5uM5rgxmyO7B7sqmARRtIJdxYdjTlHmQjHO0cc9OKljhRCUbJPBBI6/SmqseAEOdp+YMcV5m7PU5jnr9cZK/ezwKYrny8dT3Fbt5pIKmaLD7mztBrJns5kJ/dMp78UnoztpzUkMfUpBDsjPPl7TxxVJXMhwOMVaeABV4IwMgGm/Y3BV1yY8cnFFzTRDIEDShm5YVt26BbfDZGWzj1qrYW6+Zlhk5zitCKAzNuzjacnNIxnK+hJCsjSBRzj+I9B7VXlTy5SN4wTkgGrJYOzRxHDs2c1A8UkZCsN2DnI5qWRFdyZh9puIXRNux1yPxr2wV4rHMsd0pQEB3XO4e9e1V6mA+Fnk5irSic740Df2ZBt/wCe3P5GuJZFWMyDl84zXbeMz/xK4Rz802AfTg1xDOUJVgMH07U8R8ZGG+AgmTzYXQkDPA4615v4m8NSxXpuLNWcE5ZVGea9PcYQAgEdaqPAjXAzjJHJzWR3Rnyqx4rAGDMswxjld3G01Jt85CrcYPSvR9Q8LWd3cfvFALD5WT196yD4NImGJVPPC1nK5vGSZyQVm3DHykDrznFR+W6zfMdqdgBXdReEFbdh9oHv0qWLwXbuwdpm44PzYpK5Tmji7HTHmdViiZmbpt5xXonhvRUslbzRmbjc/pVqw0eHT13QDnIGTzitOMIJiU5GMH61XW7MZzutC1DbkOJQcbuoPORUpj2FsOMkYApsTqGODkYwPalfgDsQc896ttWOTW+p0Pg7/kIT56+Vj9RXYGuQ8HgNfSuG3bovXpzXXnpXfQ/hnnVv4jPItYAHiDUD0/0hjVZVVhGO5JyT2FT62w/4SO9A7zsDUcZAUBSCG4z6V4dR++/U+jj/AA4+hBIP3gXODngj0rJ1OEtDKI15wQFbvW3LGxHzHAHp3FV5YxwD+GalPUqMkebz7lY71CuhwcjNVY3A3+ZFvQng/wBa6nXdLdJvNgU7GHzgD9a5mcMq7W42tjb0rrhK6CV7XRU8xHCnkE0zeFOFHOcgGpDGrZ2nBHb1pI4JZmCpE7c8HHFb6WMLMkty1xeoxUA7hnb2FdZap84GPTGKoaXpXkRlpdvmNxjHFdBb24VhnaAV5IHSuSrLmZ2QjyomiYrGCOMdandQ5Uqcd6bCmVGeVBx9alZeuOOeOKwKPc4OLaP/AHB/KuR8URu2qcDOY1HHXqa62D/j1j/3B/KuV8RyKuthWTrGuTj3Ne5iP4Z8vhtKpixpsyD8ueuKlBdE5wVPrSiSMthA2PVlFSlogoLKAx4zjOfwrzT1ea5UuEDspQgHNY+q2KzIZI4W3t1Gf1rovLXIym4H+IDFRSRcEcZHZuoqJRujalVcHc4JEKsY0ZoZCcZP8VOFu2xJRH8itgspNdFf6WsoMiBc9TmssW7xscIcDpxkZ9/SuVxcXqevGspq6IMwR5aDhycN5n86dE3znZk89exqxI8bnf5e45wVxjd7VLbWUrSF/L2qTuwO3tTd29BSnoaWl+YkbbFVsnGTWoFEK78AZ689Kr2yBZEjBKj+Ehe9W3IMwDkndwQwxzXTFWWp5FWV5EsLeWzEHAxwrcn8K6fQQBpxK7sNIx+brXLw7QuQ6gr3PINdRoUYj09lDBv3rHIbNd2G+K55uL+Em1c4sG/3h/OsVST1rb1XmxOP7w/nWGF75rar8RzUthxY5wtMJI6805n545FN5PJrBs2DtjtSMeg9KQ5BpoBLcmgpIjurZLqPYWIU9qit7KC0h8uFW+uas9DgdaawwfepaRopO1iN1APPWoJAM1O3OarMrDPFQaxuQvgmoJAWmwDjAqdhzzUTKwB9cdam5orGn4ZI/txecnY39K6if/kM2f8AuSfyFcr4WBGtLnr5bf0rqp/+QzZ/7kn8hXfhvgPMxf8AEGaL/wAeT/8AXRq4jxj4fkv9em1Hwn4qXQ9WQLFeRPLtjmAGVJHqAeuDkV22i/8AHi//AF0avMviB4pWDxNP4a8LaXbPrlztkub+8VAkAK4BBfjgD6D3NdJyBb+F7yDT9Q1Xxb4sj1y/gs5hZ28cwMcRMZBYDu2MjpxzXongv/kQ9B/7B0H/AKLWvO9J8I+G/CfhXUJpdUtdT127tpV8/wAwMQxRiVRecDg816H4K/5EPQf+wdB/6LWgDZm/1L/7prxKV3FzIF3fMx/DmvbZFLRsB1Irz2TwNqbFsLanPcyH/CuLFU5TtY7MLUjBvmOTDtgmSbO3pz0q1HLA1vtBVGPU461un4f6kVOGt046Bzz+lJH8P9TTOZbc5GPvH/CuH6vV7He8RSfUwcSwKPLKyKxztPTFONyGVklRlHQAc10CeB9ZjyBLbFSv988fpUy+DtWCj/j03cc7jz+lV9XqdhfWaae5ybWERBUFS2cjn9KaIHiiCL90cnPQ11s3gzVJGU5tiRxneR/So4/AmorMrGSAL3UOf8Kn6tU7F/W4fzHICUmXdEmCDjp1q9EWkiMhKxnByPWuiHgbUhIcG2CkYxvP59KS48C6lIylGt1AGCC5/wAKX1ap2D61SfU5kxrsWRR+8HJxUcUpa3diCDnIz3rqX8DaoVCn7Jwu3IkI/pTB4C1dUCh7bGe7n/Cj6tU7FLFUusjlo2824ixxtdf517iK81HgLWFnRlNoFDAn94fX6V6UK7sJTlTT5jgxtWNRrldznfGTEadbgAHdNg/98muJIwzj+LOee9d74n0+51GwijtE3usm7G4DjB9a5RvC2stIT9lGO2ZVqcRGTnohYeUYx1Zk7SXfce/QU/ZH8gIGeQcVs/8ACMaszLutgABg4kXmmt4Z1gkA2qsAf+eiisfZzT2N/aw7mK6+YyEJ6g8VDLbKkkecD5tufWt//hGtZCYW0XI/6arTH8K6xIo/0NMqMjMo5NVyS7DVWPcxikf8Knj5TUMMQ8zBDMo/hzzmugHhnWs4Nmpz1PmL/jTR4V1dX3fZA556yr/jRyS7FKrDuZJUliAoHHIqJYg021Ttwcjjr9a3X8L6u/SzUc/wyj/GlfwzrBJ22a5Jyf3q/wCNKVOT6AqsO5lxLtba/wAydypxmp45FaQ72YhhtA61fbwzq6lDHaDjqPMX/Gj/AIRzWizE2ox/D+8Xj9ankn2J9pC+5oeC12X02CSPK/rXZHpXNeGtJvbC9lkvIQitHtB3g9x6V0pPFejRTULM82s7zbR5HrESnX7/AD/z3aqiBRuEeAAcnPeuk1Pwxq9xq93NDagxySFlbzFGRmqf/CIa3yfsYOeoMq/414s6M3Nux79OvS5FeXQzFJccdvWmTAn74+YH8q1G8Ja6fu2Y+nnL/jUn/CL68yndZDJGD+9X/Gp9jU/lH7aivtIwLgKsfIyOpx3z2rHu9Is7tZDJEEZv4gOa7J/COukYFku3qP3y/wCNVJfBGvu2fsIx3/fLVRp1V0NI16NrcyOCPhu3EihpZARwRkD+lX7bR47T5IlyM9T1NdePA+u/eNiC3b96v+NPj8Ha8j82K47/AL5f8apxq9Ux+3or7SOaWzEMbDC49T1p6oAo3DHGK6WTwbrrk/6AMdv3y/403/hCtdI5sxkf9NV/xqXTqPowWJpfzIwkOIwwwQOMetIDvOGbBHStv/hC/EAb5bEY7/vl/wAacfBevbebFS3r5q/40lRqX2KeIo2+JHqsH/HtF/uD+Vcv4jONWycY8teoz3NdRCpWFA3VVAP1xXO+IbKe4v8AdFGzIUAJA6da9msm6Z85QklVuzD/AHTccA5ztH86UoSdmcehPNPNvdhgJLSRwfl5Q8CnpbSFgHtJsKc/6s156py7Ho+0h3GtGdgZZHOBjb159adEodCzAuV4BB5P1FH2WUHdHFcKc9ozUgW7LAm1d+24owquSXYXtIvqVzBvbZs47g9qp3WksJTJEBjupPUelbMdnIcBkl3e8ZxUUlpc9UhmUE8gKTUyouXQuGJUXozEjjWUgeUn3scckVZS3EXykZGMn1q7JZzHJEEofdkYjPIpWsp+CsM+c4YeWeKmNFroaSxMX1IdiiMNGvzY9KenA/eYfnnNPeG4Vf3VtL8vAzGQf5U0WtxvHmW8zDnP7snPtVOnLsZ+1h3EIClQzIfVGPAFdV4fO7Sx8gX524Axn3rnJbFnDM1vKTgYxGT/AErpNBR003EoIJckAjGBXVh4yT1Rx4qcZQ0ZNq2fsDY/vD+dcuZbs3wVF/dY5NdXqMDz2ZSIZbIPWsn+zrzoIQR/vCtKsW5XRjRqRirMrAjmmsc9Ktf2ZdH/AJY4/wCBikOm3faH/wAfFZckjVVIdyqTQMH61Z/s29/54f8Ajwo/sy8x/qef94Uckuwc8e5VIxTS3FXP7Nvv+eP/AI+KadLvP+ff/wAfFLkl2Gqke5QcErxUTHtmtFtLvz0th/38FRNot+c/6MP++xUOnLsbKrBdTMfrTCTWidE1LtbA/wDA1pp0LUz/AMu4H/AxS9nPsWq1PuL4aH/E8U9ijf0rp5/+QxZ/7kn8hWLomlX1pqgluIgsYUjO8Gtqf/kL2f8AuyfyFdtCLjGzPOxElKd0M0T/AI8n/wCurUHQNLa6nuJLC3lmuGDSPLErkkAAckdMCjRP+PJ/+urVo1uc5j33hTRb+Hy5dOt4yM7XhiVGXKlTggZHBNX9OsIdL0u1sLXd5FrEsMe45O1RgZPfgVZooADRig0UAedfECDWG8Q2d3ptsutWdpbMbnSFnMUg3HiZcdTgED0/GqVh4yu9Ph0SOzl8zSdVtJEsZbuNmnFyCcRyHPPPfvivQb7QNN1G7+1XdsGuPL8rzVYq2zrtyCOPas0eGS2tWjM9sNJsAr2lksGDFKARu3emG/SgDkPEHj3xBod9r8Xl2M66PFZPgowMpm4YdeBnODTL/wCIuvafZasrxWL3em6lb2pYKwSRJRnpnIIrt77wV4f1K5vLi+09Zpb3YLhmdv3mz7uee3amS+BPDk/n+dpqv9okWWbMjfO6/dY89RQBwyfEvX4tYWC5trB7eLXv7IkKK4ZwRneMnAxxxzmkl+IniHUvDWr6nYWKW9mkFz5N0q5Nu8TYAOThiwyeBwR3ruf+EB8Neb5n9mIX+0/aixduZv7/AF+971aj8JaFEl6iabCI74sbhMfK5b7xx0Ge+KYHDaX4k8RwTeH9DsXs7ia/0VrpJrpWG2RRwGIJyCTyaz7HxnfaVrWr2ixRfb77XUsRNJJI8UZMeS20ngcYCjGa9ItvCOiWl9Z3lvYqlxYxeTbyB2zGn90c9KifwR4dkW6WTTImF3MLibJJLSDo+c8HnqKQHGeLPiB4g8K24S8ttLN5BZC6mjhlaTzT5oUqBwUGDnce/FWPCM7zfF/xMQ0gieztZREZCVUsuTgdAfpXV33gjw5qTs9/pcM7vB9nZnJJZM7sE5555q1Y+G9J03U5tRsrRYrudFjkl3EllHQHJ7UAaYHFGKWigBAKQil70tAHlHjCxef4swQWtiL8z6LNK1s928KO4cANkZ+YdP6iqXhfxrqFr4V0TTdPuvtty1vdzT3N8hPl+QT+6GDlsHjcT0GfavS73wno2o6odRu7QvdmMxecJXVth6rweh9KbJ4O0CSxtrM6XAsFqGEKoCuwN94ZHPPf1oA43R/HuveJNct7LSbWyjW50uK/UXG75CXCuuR174OKxL7xHd+IfEXhrVmxbwDXZ7SOKJmDGOPI+fnByQTjHHFep2/hnSLTVk1O2skiu0hFusiEjEY6LjpioP8AhDPD/wBrW5/suEyrcG5XOcLKergdATjrQBxMPxF1y68L6nrkGnwpaxW1xNbuyHbG0T48tufmLKCcjGDVzVPGPiTSNBs9XvbSzFldqkrTwq8n2ZDED+8Xg43nG4ZwO1dWPB2gizvLVdOjW3vSTPEpIV8nJ4zxnHOOtSTeFtGuNOgsZ7NXtoIjDGhdvlQ4yuc5xwOKAKutas8fhdJLV911fIsUDwKXwzj74AGSFGW6dBXD+FvGOpWfwq1hZ383WfDe+J/tSkmRVOUZh15Xj8K9Km0SwnubSd4MSWQxb7XKiMYxgAHHTis+XwP4enuL6eXT1eXUF2XTGRv3y+jc89KAORufHPiSH+y7cWVnLdaxbm6tFiDN8qxBijD1LHGc4A5r0LTJ5bvS7a4uYDbTSxq0kLHJjYjlfwNVJfC+jzWtjbyWSlNPObX5juh4xw2c9K1I40ijWONQqKMADsKAFxQRS0UAJtoIpaKAPPPFs9zf/E/w74fvGlj0a4hlmkVHKC4kUEhCRjIGAcZ5zXP3/iHUfBWv+M7bQ/3un6dYxXsUNwzOkMrFQUBzkBgScZ4xXqupaNp+rxxLqNsk3kvviY8NG3qpHIP0qm/hDQn0q6059Oja1vG33KEnMx9WOcnp3oA4WX4nalZW2rR3dtavc2r2SQugYJ/pC5yw5+7z9a6uLWtXHgjUdQu9PMOo2kc/lxY4l2AlGA7Z4OKsjwL4c8u7RtMjdbxES4DszeYE+7nJ7dvStm1srezthBbx7Yx2yTn6k9aAPPPAujWniDwDZa3qGo3M2p3y+dPf/aWDRvu+4MHCqMY206Px9d3OtW8EtpF/Z97qs+krHgiVSi/fJ9znjAwO9dhb+E9EtJC9tYJEGk80xoSIy+c7tmcZz7U8eGNHGpNfixjFyzM+8Z4ZhhmA6BiO45oA8p8F+K9S0zwhpmnWRjkmeLUL15rtmfCQyEBBznk457CuisvHGva7rtrZ6LbWMa3ekxaii3O7KFmAZCR7ZwcV1Mfgbw5Fp8VlHpcYt4WdkTc3y7/vjOc4PcdDVyLw3pMGsJqkNmkd4kIgWRSRiMdFx0xQBpAUuKXGKKAExRtxQeKBQBxPxGtNWu4tMXQ2iuJYZzPLpckpj+3Iq4K7h6Eg4PFYOn+L7u2sdFt9Fge1e91Z7C5tdSLSNaNtztVs8gY49vpXpGoaPYao8L31uskkBJifJDRk8EqRyDVKXwjoky2yvYr/AKLKZ4SHYFZD1fOeW9zQBwugfEbXL6+0YX9tYeRqTXcQWMsrK0APzFicAEjp2FZOr+Or/wAQ+E/EdhdRxIY9HW9jmtnYbGLYKhs/MAejDrXpMPgPw3AbfytMjUWxcxDe2E3/AH8DPfvSDwD4ZWB4V0qJY3txbMoZgGiByEPPTNGgHlNt4pn8Ka3q2qJ5lyU0LTgkUkrFDJIFXcefxOOtddP408T297pFlLYW0M99fSWm6ZWCyqFDJKoByoOeQfSuqHgTw2PPzpUTi4t1tpQ5LB4l+6pyegxx6VM3hHRHaxZ7FS1g2+2Yu2Y245zn0AHPagCG+0j+1dBt28QxRvd28JkdIJGEXm7CCR0JHpmvKdO0+J/2fLrWWe4/tBYpV8/7Q+4jzhjJz2wMele4XNrFd20lvOCY5FKsAxGR9RWTF4N0GHQZdFisFXTZTl7be20859fWgDh9K8eala6VrFtcJZvJo6WaxTSyFA6yquc5zlhk4Helh+IetTafalIrRZjr50iVmjYB16h9ucqeOQc12Q8CeG/LuUOlxst15fnBmY7/ACyCnftgYpzeB/DrDH9mxqPtP2sBWYYmxjfwevvRoBD4G8Q3Hifw39uvYo450uJYHEedp2NjIz04rpMVR0jRNP0K0a20q3FvC0hkKKSQWPU81foASvOvEE0+q/GLSvD+ovJHpH2B7pIUkKLcygkfMRjIUc7a9FqjqOiafqxha/tlleBt8MmSGjPqrDkUAeTXHinVvBuo+LbbRiLnTtMuLYwR3LM6xNKQHjDZyPvZx2xXQ+JNe1j7avhq8isRLfWl1dNKm8gQIPkXqDvznJ7Yrq5vBugT6TJpkumxG0ll86SPJ/eP/eY5yT9as33hzStT+zm+tFma2RkididyqwwRnOcEdaAPJfD+tXtlD4YkRmllGgXU6PLNIfmUsfmXOG6dTyK1NF+KGsXcLm8tbAvJoX9qxfvDEisG2lWYk8dOa7oeB/DimEppkaeRC1vGEZlCxt95Rg9Dmoo/h94XiVlTSYtrWxtSpZiPKJzs69M80AcPL8UtXTw7rF5HBavNptzbKjFGCypNjgjPBGevetfV/Ffibw7qGly60unf2XfXLwGW3R2aMlcxZye54PvXRyeAvDL208DaVF5VwUMqBmAcp90nntT9R0K4v9QtI5J4W0iFUY2jxbn81GyrB/wFAFDxLpVzrXgWOy1aYRX1wYlaa2LJ5TswGVwcjGfWvOrnXb/U/hFqWjXVxPDqGgxyJfSRyFXJjYCP5uvzdffaa9ov9NtdUtlgvYy8auHADleR06GqV14U0S9gvYriwjZL91e6AJHnEAAbsHngCgDgF8Z3fh7RUt9Otofs+k6RbXtz5zMWnMpAKqc8HqcnPNZw8Uz+HPF/iq4tQ0n2vULG3hSZmZITKpJbbn68DGTXpreDtBdYFk06NxboI0DEn5A24KeeQCMgHpTbjwV4eu5L6S50yKVtQZXuSxJ8xlOVPXgjsR0oAm8OX1/qGjrLq9obS8V3R0IxuAYgMB2yMHHarM//ACGLP/ck/kKsW1rDZ26w26bUXoM5z9SetV5/+QxZ/wC7J/IUAM0T/jyf/rq1aNZ2if8AHk//AF1atGgAoozRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAHeiiigAooooAjniSeF4ZRlHBVhkjI+oryD4cQT6pbM98bwJa6hcSJqLXrnHlyLtiK7vu4J69a9fmiE0LRlmUMCMocEfQ9jXOWngDQ7K0+y2yXUdsZ/tDQC6k2PJkNuYZ55APNAGJZ+PdTa81O11Cztop9JnkN3HGWJNuqblkX3Y4AB9azJvinrEXgy417+xIxGIYLiB2LiJxIxUx7iBll4ORwc16MNFsBqF3e/ZkNxeRLFcPj/WKoIAP4E1jn4e+Hm8PvohtH/s9mBEHnPhRndtHPAzzgcUwG+EvFFxr99rVlewRxTaXdCDdExKyArkHn8a6msfRvC+m6Dc3lxpySLLeuHnZ5Wfew4B5PWtikAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABSClooAKKKKAOP+KL3dt8O9Uu7C/uLKa2h8xXt2CluQME46c9qju9Z8qHRopZ5FitbJdSvnVjkxqmFBPfc5/8dNdDrugWXiLTXsNUWR7WT/WRpKyBx6HHUe1O0/Q7PTObZGLeSkG+Ri7bFztXJ7DJoA4P4f8AiifXviF4j+1X6TDyrc20Ecm5I0wSwXsSCcE9zVWS9m0n4o+LLmBpJU07Slu4LeSdzGHK/Mducc16JZeH9P0/WL7VLSAJeX+z7RJknftGBx2/CqE3gfRp9Svr+WOdri/iMFy32h/3kZGNuM9KYHGr8W7m1066udR02ImLRodTiWGQ8mQhdhz05I5+tL4u1DXzN4WluPJtbiXWY1iNrcP5c0TKD8444zwRz0966mD4ceGoBIPsTSpJafYnSWZnUwjomCeg7elTyeBdEltLG3kjnZNPkElsTcPujYDCkHPYdKQC+CPEr+K/Da6jPAsEonkhdEOVyjFcj2OM10VZeg+HtP8ADdg1lpMTRQNK0pVnL/M3JOT61qUAFFFFABiiiigAooooAKKKKACiiigAooooAKKKKACqM/8AyGLP/dk/kKvVRuP+QxZ/7sn8hQAzRP8Ajyf/AK6NWb4m8d+H/CcZ/ti/RJsZW3j+eRvoo/rWlov/AB5P/wBdGrP1nRPD3iGRhqMVu1zbPhZ1YJLC2MjDde4PpQBwL/ErxN4ima40HRJbDRrXzPtF3OAZCREzKNvYZ2nvXpXhe8n1HwnpN5dvvnuLKKWRgMbmZAScfU1xWu2OpaFpt+LPVLa/s9QaQ3Rmws6/uGA27eG+6vYGuv8ABf8AyIeg/wDYOg/9FrQBt0ZpG+7XD6x44vNN1Oe0gsIZRE20FpCCefpUTqRgryNKdKdV2idzmiuAHxAuw0gbT4cIDgibnjrxio4/iLePuJ06HaoOcSntWP1ql3Oj6nW7HodFecSfEm9jVSdNh+YgH96eP0qdPiJcuY1WxiYuD0kOB6dqPrNLuH1Ot2PQKTNcH/wn92scoksIjKmMKkhIOevao/8AhYOoo4WbSokBHGZT/hT+sU+5P1Sr2PQaM156PiLciN/M0+PeD8u1ztPtnHWoT8TJ/OEcdlAWERZ/3rcNx8vT3p/WKfcPqlbsekZorzz/AIWLeEjbp8OMAnMhz/Kpn8fXagj7BDvVC7fvGwPxx6UfWKfcPqlbsd7mivPbn4g30aqU0+AqwJ3NIQAAM+ld3bSGa3ikIxvQNj0yM1cKsZ/CZVKM6VuZE2aM1Wv52tdPnnTGY4ywyPQVxieM9SODsgAI7qf8amdWNN2kOnRnVV4nd59aPxNcI/jTUFZsJAQOo2nP86R/GGqREGQWwUAk/If05rN4qma/U63Y7ztSZ9K4EeN9SKAlIM9/kP8AjUsnjLUl2bIocMcEsh4/Wj6zTYfU6vY7oE0AnvXCr4z1DeVdIB6YQn+tEfjPUWblbYrj+6c/zp/WKYvqlXsd3mjNcEfGmqGQhI7cKD12k/1pX8ZamI2Kpb7sgAFTz+tL6zTGsHWfQ7zNGa4VPGWo5xIsGR12oTj9aafGepFcCKENjIyhwf1p/WaY/qVbsd4DS1xOmeLL681KC3kWHDyBWwpyB7V2RPNawqKavEwq0pUnaRJmiucvdduINSlt4o1Kx9yP/r1XXxDfFchYQe/yn/GodeCdmUsPUaukdVS1yI8TXrMQI4jjkgKf8aT/AISe+J+WKLHrg/40vrEB/V6nY6+iuVPiO7C5IiHqSp/xo/4SO7wuxY3J68YH86PbwF9XmdVRXMDXroDMgQA9Pl/+vTjr9ysYfEZUn0z/AFo+sQD2EzpaK5j/AISC5PRY8dfu/wD16Drt8FzthI/3T/jR9YgH1ep2Ompc1zKa3qDYHlw+/B4qQ6ve9hH78f8A16ft4C9hNHRUVVspmns45XxucZOKxvE3iKTQTb7IUkWXduLsRjGP8a0c1GPMzOMXJ8qOjzRmvNZPihOgONPiYZwDvP8AhS/8LOuSny6dFn3kP+FY/WqXc3+q1ex6PuxS7q86i+Jc77llsIg38IVz1/EUh+Jd0q/8g+Fm9BI3+FP6zT7i+q1ex6NmjNeep8Rrx4w66bGecffP+FRt8SL+OTbJpkIGe0pP9KX1ml3GsLVfQ9GzRmvOx8R75ioGmw5bkDzTkj8qj/4WZehyradbrj/pqf8ACj61S7j+q1ex6RmlrzqP4jX0sO8abAB3zMeP0of4k3QXK6fE3Gf9Yf8ACn9Yp9yfq1Xsei5ozXmv/CzbtW/eafbovGT5rZ/lXU+Ftfl8QWc88kCQmKbYArE5GAc8/WqhWhN2RM6FSC5pHQ5ozUUsgiiZyDhBuOO9UBrMJGfLk/StW0jJRb2NSkzWd/bEOP8AVyUf2vD/AM8npcyK9nLsaOaM1mnWIh/yyk/Sj+2Yf+ecn6UcyDkl2NLNLmsz+2of+ecn6f40n9tQ/wDPOT9KfMg5JdjUorMGsxf885P0o/tiL/nnJ+QpcyDkl2NPNFZJ1+2DYKSA+mBT/wC2YW6RyfpRzIOSXY06o3H/ACGLP/ck/kKZHq0UkqxiNwWOATT5/wDkMWf+7J/IU009iXFrcZov/Hk//XRq868efC2z1bxFc+I7y6LwyIomt2uRbbNoxuEhBH4EfjXoui/8eL/9dGrznxl4Gu9d8U3Oqa5qMK6PGyJDZ3V20MbYUZJI7E/jxTEclpWg+AJGuLnw5q18NVsoZmNrdzBw48p1O0gYbrnINe0eCv8AkQ9B/wCwdB/6LWuMmsbiw8J3C6BY6DFpxikW5k05y77PKbuRzzt75rtPBf8AyIeg/wDYOt//AEWtAG033a8n8RxR/wBtamHXy5C4aOQ8jrXrB6V5D4nLSa/fqV5lZkDEZ27T1rjxfwo9DAfxGYUd0ft0c0oDhJfO8vGN+ckLx2qxFLIbdzNFHH5krDruJB5H0qC5tlJYLIWMPlcjOTuBP6dKZFcNb2rxHaWZwWbacr/9evO6HsWTehbjjQwu04VooTny8gEsOlO2NJInmDYxByAfbI/Sobl0htwAjfvB5u7jLdjj6+tVU1CO+a48tfIIcLGrtnPyc9KpRdjPn96xpJItncAW7sY1YLuYcsSOOO1ZmtSGOabzG2q6DcBk5pkWpeRfW+RvZELPnozDgfSqt/dtPbSIz759pKoTyee/4VpGDb1IqNJXRZtdYiS5Nr5pAkCqqnowHWr0/mNJERtQ+WFUKMblP/1q4q2siNQtxAzSll8wlP4PY/Su0hxcfuyd5hgLox5xtXG3j3p1IqL0ClNuN2PEhdmiRFREPzKpycZ6/nU0t7IkbSq+BIoQDGPvE8UbDFpJuIoAqLsUsD1OMkevWo41E0EYugN7zBiRxgYFYrRG/wATH3ASW1Ns+d0a7Rk9O/T617RZLts4B6RqP0rxl7WCKS4gaYmZk4bpjnuPpXs1l/x4wc/8s1/lXZhN2eZmG0SHWAP7HvM/88W/lXmUg3uEUcFeEDdPfNem6zxot4c4/ct1+leZBAcsHGCc7scN70sZ8SHgPhkNeMxoBI5z19j7VFeobjyhECNy4UH+Gp3X7yqw4cANj+VJJJsWL/lm6A8kd647XPR6lcB1IQfdTkhad5xeQGQdBnAPaq0lyUV/IILP1YdgOtc0+vFW8uInBOOR0X1NVGD6ClJLc69mLuZCflx2PSmGQKrFE37AfmJrGtdUWZRDF87KNx5wK0YbhXXbMylV+ZiOMCm4tkqSNC12SL+9cnjIOMVH8q3GEYlAcn3FUDekkAElAThBzR9sYks/ztxgdKmRUdS8ZcYijTAblselSlzImZAMDCqP61VDSLwTl2HI9adFMrNzg7DycdajyNUro3NH/c6vYwhPn80FjXo2Oa8y0GVp9ftWPTzQQK9Or08J8LPEx/8AEXocdq8kaazOSqh88N+Aqm8m/ad2QD8ue1W9cGdUnxn7w79OKz5dsKqDjPrXNU+NnTT+BCSP8xJAyBjrimRtGBlsE9lBPFVNQvooY2mYhggyflrlbrxtHCu2FDLuBG4AfJUOyNFFs7TzEBb7vTGQM1SudXSB0LtwRkZGMjNcJe+NbiOzPloDIy/Kxx61VtdbOreX9omXzF6IvI/MDFJvTQ0jTV/ePRp9dhWLYE2O2Od3T6Cli1tHcpvbaBwc/nXn7yeZIfKCgAD5jzitKO8EUZnV1CqmOlZczN1RgegpdxugMP3iMcGrK7GCtt3PjGfeuI0LVS8y75W2FgMjgV2sHkzFTCNxUdTVwldnNWpchMTg7FB39+eBTlXaDwobPOOaRlO3DBc57Ugi+U7ce3oK1OXY6fS/+QZBxj5a474lRiRdPV2KqS+cD6V1+kA/2Tb5IJ29R061xvxPGU0/59oG/J/Kuyt/BOOh/HRwbKq7gSXjB9MZpJHDRnb8sWfuZ/rUXyiExt97JwT6Gph5SwCMXCKfbOc15S3PadiWKNXO7cjHIxhuhxU91eWtvNkYkO3AA4qlBDbeSVmfL7hlckYH97PoK5++1RIbs/Z2JTqq+1aJStoQ4q92dPConhaQskIJ+Qbs5qtMkMUpRW34PRKxo9VkMARgx4zkkYFPtLxlYsjJ83XHaod9maxhobsaPJlugUZ+Y5z+FMMHk/Mbj5z0VV65/lUMmoO0ZaSVUwPvbfSqsesw+YzNDuTOBKT1FVFJkWaLihUcbeCvcnvUvklgf3beYeGJP8hVMXEc0gkR1C5BUBT81XBcSyKZZZli/wBk8mq0uRJMa0O2bdgIBwe9ejfDRgdGu+MEXGP/AB0V5ud8krLuLHGS3XFek/DZAmj3eDnM4JOP9kVthv4lzmxP8Kx192P9DlP+wa5oHoPauluv+POX/cNc2Biu6ocdDZhk9BQdwpwx1orNHQCjPWlJ7d6M7eDS49KdiW7MjwaaIj5nPTFSDhiDTv4utDGncZtIoI/SntyMCojkdakEVJLQyXHmCrSrgCm7vmwKU56GkWkTWv8Ax+Q4/vitqf8A5DFn/uSfyFYlr/x+Q/74rbn/AOQxZ/7kn8hW9LY46+6GaL/x5P8A9dWridZ8Had4/wDF1+niHUZ2h00rFBpsEvlhQVDeY3ckkkA/7Ndtov8Ax5P/ANdGrgPHWl+FfEOuSmfVrvRdbstsRubVHJZSNwB2j5hz6g9a1Ocz9Y8Eab8P187w7qFxCmoxzW09hNLvWZfJdtwzyCpUHPpxXovgr/kQ9B/7B1v/AOixXl2kab4K0q11M2/ic69r8llNHE87ktGNhJCrzt4HJJr1HwV/yIeg/wDYOt//AEWtAG0eleO+I3WTxHfm4bMccrBVBwevNexN04rx/X0U61qa3G3YZ2KKw+8cj0rjxfwI9HAfGzJjufLd49vzF0yzDkAA4/pUdxbu935uDlh5nBzjnAyO3SpUQBg2MRFTuc4bYPUUrOqswKFmeYMWGcBccf41wRjc9STtsR6hHFa2sqKSz5YOW+6pYcjFcvb2sUn2qWR22xOdozs7dfzrY1nVvO1V4oE88Qq0bFB95h0Y+3NY9qo1O6u08wRkcytJkg/LxtGPWu2jDucNaa6GfbXTz3luEhbzZOOGwCexz6Vfjn3w3UwlWOX7gBX72Dhqx3LxXyRs3lSRKfMwPuH3qYCMLcLHIzgHjK8vz1FbygkYRqNrUtQ3tz9sJDkGUJbhY4+GI/h/LuK6u0uZIbWOQRsTMjQ4IGQua4yAZ1tVhMkcMEyyRrJnLMa7S3jiiHz+YFUpgM3Q8Zrjr2R24dtrUuXjtBHFE5/dldyRAchSeCfyqS2j2I+Th1GBuP3+eSPpjFR3wjuJ9yMoHl56ckjt9MU8l0uJmSIAvgqeyZrkuditYNTChpSR5XnKAwblhgA17PZ/8ecOP+ea/wAq8TkRWaJZgzPluhyfxr2uz4soMcDy1/lXZg3qzzcx0jH5kernGj3ZGOIm69OleXs+9GdwvXHHr7e1ena3/wAgO9/64N/KvIpp5UQYGAR1PQU8W7SQ8vi3GRdmukCLChYke3WqjrGNyucler7uM1HFeRrGXbBcqQuOQa5XV9YazuEheQfvehI/WueML6s7Zy5ESanqbm4eKHiIfeYDrWGJ8W80gUmWXKhcZK+/0q3J5ghPOY1ORs6ufUewqiyuZQFMcaOBsB65HX8a7Iw5djzpVHJ6l6xY2qmUPmQMAQp74qO81KeXfG0iokjjgc4+tRRtK5VH+TpjIx+NSRbJfNWbBKtjOOqj+tPlQlJokbVpo8rGzEN93PBx9a2tDvPtsLvM2NrALz96ubm2hWaYbSDhVHZav2l0bS0AiI3hsk7ePwrKcF2N6dRrc686vFKogDfMoIPT+dTweW5VRKr7iCxUevauJikud+4qAzchXX72a6rTGSKNI9wkZeWY88nt+Fc0os64TudToQW3161RDgmTG0jnFemGvNPD6Stq1qzjgTgknrmvSzXfhfgZ5OO/iL0ON1cZ1qfJA+b19hWa53Als/KK0dZBXWbhjgjOAPwqg8W20Yll+YcYBrmqfGzqpv8Ado43xgZV0qQo+xT13eleWbGmXMnzupOFJIyPw616n4vUPpzRM+MckN6V5o0ca25AJDh+SOy+tYp+8dqj7gjEeSrSSRKx4WMybcHrnpUiyZubdfk4YMPLG8Z7ZyABWe8e64jwZim4EbSBx6ZJqzb3r2t6Ps6IgMnzAr5khXpwegFbpKxyyk1M62NDKpd42MhPO75c8+lLcfOreYrLI4xjOP0pLG6lvWEqwukXOAy84/x/CkdoppJvNkX5V+ba2Py9K5ZKx2U5X1NDTLkwzYjjUFcAsTnB9vSvRdKm86yQvtQqOR615xp8RdY3DKu3svQ545zXdeH3wuwkcDnNTD4isRG8Lm9GEOSACe3zd6VTIWHOD3IHA9qaTHjIypxwfWiNjuD5IAHIzgZrpPLOn0oY0qAHqF/rXIfEiUotigG8Nv8AlP4V1+lHOlwH1X+tcd8SkZhp5RgpG/LE9OldlbSkcWH/AIyOKVxA4N7AW2pkKBjP41j3eoWqTOwj3Rt92MnBB+opL27YkR+aw9SzcAelZg2hhIxyBwNvc15idz2uTlC7PyuHzE2eUY/d+v4dqykgXz90UbTn1JzirFxayy3Du0ik4y/mHv61QuV8hR5Fy8gz1jOF+lddOKsc9SWupO9zLvjiRCAP7ozmpoXLz52mMjoGbBBHtWckhRtytNvTkknoPU0CQb/NV3DMcfO2Qa1dO5lGq11N+WVjGMHeXHHPSqV95ywRoBvLHkLn5TUBuB5LY3K4G7IYAflUhizmUyM3y/dDd6xUORm3P7SNkNguZwVikZUES4xnt61eikkZFCSI0YY9zz+NUVuYo7YI1vhjkFn5Zvxptpd+VdYgjYw8kI43AVU4pq6JpyadmdhbOEVGZlJI/hNeo/Dgg6Td4/57j/0EV5LpzCSFUlByTxhf84r1j4bcaPdf9dx/6CKnDaVAxq/dHX3X/HrL/uGuc25rorsgWkpJAAQ8k4rnBLFjmeH/AL+L/jXbUR51HZihOaXb75pPNiH3Z4f+/q/40nnQ/wDPWIfSRf8AGs7M6Lj9oPTNOwFX3rJ1XxNo/h9rf+1r+CBbh9iszDaPx7Vfhu7a8t/tFlcR3MRG4PDIHBHrkVWyIerJAVPQUcjp0rz/AMQ6jrdv4ghNpMFtg2Xyp+7muy0zUba+hXy7mOR8Ddhu9Rzq5rKm1G6LpHFNepC3GOopOG4qyERAZpCe1OI+bAppTGRUtFpiWakajAT/AHxXQz/8hiz/ANyT+QrDsxi8h/66Ctyf/kMWf+5J/IVpS2OXEfEhmi/8eT/9dWrzTx74k1q+8S3HhPw0BpMTFWvtVIP8S9BgHBxgep9q9L0X/jyf/rq1c/4m+IPhjwbcyQ31xvv5PnNpbJvlc4wCR+AHNbHMczZ6f4R8H+D7yw0qU3Wo30Esb3UkbeZM3lsxySBgcHj+dd54L/5EPQf+wdB/6LWvMLvxX4t8ZLcTLoY0zQLUS+f5vMxPksVJB6dVPA79a9P8F/8AIh6D/wBg6D/0WtAG033a8a15ifFOpszDcsxxzjHYY/KvZW+7Xi2uIr+KtQVkGTcSEPnp83p9K48X8CPRy9Xm/Qz4rZY0fzGYRuvOT8wGSTT3vURbyadVby03quDggADmkjkZmEbKGVidxbjK0jmFRcqy5Z1ITcP4ia4YPU9WpE5CVbkXiXJ/dtLMrRK4wGVjmrrXcek6veyNC7yNiNsqdpOdoK89ByaydRjuY9QNvLK5MBJUE5xt6Y9qfLrZWWKb5WkFsyMJPmTLdeCOD3Feolojx5PUWO0W6vZLSUxQyTzbUbnoACSxqKWbM7MhGCVBKjA4FMlf7Vc29ta5IgAw4whckcknNSxMj3hYop2Pl41wAOwqpbXIS1RZ+1mXVCRFmTzhAhT5lyvQj866S3ufOtZdu0yF1T5+M4ODn8q5bTSj6p5UI+VZGkacZHrhR7cda39Fgd/9eu6Nf3nzHJJ9T+tcdaN0ehQk9mbNuuJBHtBG0jK8n3A/AVPcSb5LgCFojIVUA9hmq1tEEkEwkIKEhQB/Ce4/OnXT4SXYXZmcCNsYKj6Vwa3Oy2oqny9RbLHfGu1T0zx1r2qyObGDP/PNf5V4deyNHDHtO52YoGI9RnP9K9wsciwt8/8APJen0Fd2E3Z52YO6iQ63/wAgO9z/AM8W/lXkN4C8DoCyqTn5a9f1kZ0S8HP+pbp9K8c1ScW0Mh3GNFXBOMnNPFJuSRWXy5YSZVRFSMRF+ApyznAHHtXJ+Ldn2ixSJlOFOWyOTmnS6jfJHIq7pY2O8b+CR61QtYhqSStMD5rDG8jmPHPHrVQjaIVqjm9CyL+UzQQNHHscgMyHOB1qnI7y+Kd022NFTciheB1wcdjW/bYtIHktdPgdyuRIeCD06VCLF5Lr7XcD98xyigfdHbPqetacySMFGTK1/PHaQ2yptkuHYAD0Dd/zpWkCsykriMgk+/TNSnS4/tCzPmR+g3Dp6frSXlm1na7R80j8kbccnpz7VPMiuVoglVDMNvzFj+8U9j6VPbRqLrfMv7v+FWHAPv7VW0+RCpQDzTjl++R1NXUMRZPnMkecu3rUt3GosJ2QO0h3HjkMenvWnol3KWj3RqPmywKkADtTUtleRQSH38ewra0+y2yEMMg459q5qm1jspJnSeH5HbW7X0aUMeenp+FenGvN9EEa6xZeUAPnAY5616RXXhV7jR52O/iL0OR1dd2rTDjlv6VQuF2IV3EkDGMcVo6ow/tiYEZO7+lUpucnGATyK5qnxM3paRRxXijTmurRmUEsPvZz8w9K84kh8qLZIAWLfNx0A4r2i+XepG3AIx1ryTXkSC7laR9oLfdHNYPSR6VJ80TEvXjhmVTEJAI+u3I+npV/TbBRC8kLMNpAZ2AGPcGqRkgnmaN2yrYCcHDY71e0W4ZYmt3QBZDuCg9vxrVOxzSTbZoabvjC2xY5Yth1c5P1q9b2sUCyK6qwPLADOKjtIJFufMjKjH8IA44+mauWy+fcGMj5eMk98+orKpZHRQu0XrKI5QOF+U5yQRx2xXYaDGzKX24weSR1rn7CJ2uGjkRV4IJ64A6V1+kf6kGNsqBg+grOGsi8RJxp2NBtu5QFDHGfpTHk/d7WAyTzTZCPmAHyr0cdTVDzZHmx5Zf13Niuhux58YXVzuNJOdKtyDxtrifinkwWAC55f1z2rtNGOdHtyBgbelcr8RH2HTz5fmD5857dK7qy/cnn0P455BehmYSrtAZseWuBis8My5yFBTk59c+1b2oLG8m6GLk++cVni0J3SIgyflYk4zXnRaR7b11MG6uLx5WcnKFu5PPtVOZHWZsmNQD9wE4HuK27iGNVEU74APygHgkVi3F6sRaOWDDsP9YRXo0XdbHl1lZ7lZ5CVOA2XOOvH50iKJlyJZAygkg4wTntUyzz3WmmzjhXDkAS7fmHvikSDyljWfOSCEUDJY5rp6HFd3LAid5lKk+XjJDNWlFMY1QSKoGzcSO/0rMYvG6lDzjaeO3pVuIS3Me5nLD+E4AwK5KndnoUdNiWeRGgYvLIsin5NoBGPrVa3iMlyRbtIu/uxxVtLXzlIUBkA4YnFaml2ccsallRWX+Fj+dYyqRUbI6LNvmLlk8qxY3t8uMkc/rXrHwycvo13uznzx1/3RXn0dqkSjYi7j3HQYr0T4bwiHSbva+/dcZ6dPlHFTh1apcyxU70rHUapaxXul3VtcruhmiZHXOMgjBrz9fh94Y24GmLxxjzX/xr0a7/AOPSX/cNc4Diu+W5wUdmc5/wr7wuP+YZ/wCRX/8Aiqcvw/8ADA66YCPeV/8A4qui3Z6UK3OKm5u0eb+M/g9p2vw2UGirHp+ybdPIXZiVx2znmuq8J+CtO8G6d9m0+SaZtoDSSH7x78dK6JX9CfypxwaNyDnPE+iz6lYzfY22zbCAfwrmPA/hjVtKvpJb1yFJ5BOc8V6RtzQFA+tZOmm7nTGu+XlGA4Pt0pT9KMYHIpskmF56DvWmiMYq7EOBzmmNz3rHl8RWqXn2ckFjwea1ImEkYYd6yVRSdkbODSJrLP22HJz84rdn/wCQxZ/7kn8hWHacX0P++K3J/wDkMWf+5J/IV009jir/ABDNE/48n/66tSaroGmayqf2jZxyvGd0cuMPGfVWHIP0pdF/48X/AOujVxfiH4q/8I54kvNKl8P6hfeQV2zWiZUgqDg57/4itDnKOvpJoMt/p1lriSrf+bJcW1+hE7gQMP3b8Bx8q56ng812/gr/AJEPQf8AsHW//ota8s174iReL5LKyHh7UbB43mkE91GAoxbygjPqc16n4L/5EPQf+wdb/wDotaANtuhrxnxDCw8T3si4IFw7ZxyDnFezN0NeRa9FFceKLpCNoE7liW64z+VceL+FHo4D43bsZEEL3LbolJaMLg5wXZu30FUmlxcSYRUKttZTk4wav2xKr+/2pIm1o1GSST2qptV5CdwaWWX5uccbck/nXnRPXvfcw9XgkMsu9QQr+WNjY2k/N+gNY50tZYCImBDFQzdvXmtGe3Vrhpxu+VmzDg/NyPlz6t69qtQWR+2xxy25gMoZ0jDbhF6Lx1x0zXcpuMUcDpqUncyLfTI5Nypgh1ZmY9FA/Xmm2ca20DyRjaSdobOM/SttLVrgIxwrvJwBwxXHP0GaiuNPNrN5dwhB4LEnoPWq9rdClSS2KWkWzyXEu8tHuKKj7sbecAn2Fb+kDYt1Ht8xuQADgFfu5P8AOoFtLMGOXyXnZQse3cRuAJIH51rwQokMyWrbE4ZmKfdYDO2uerO50UqbRZhbZboqwjKoInkPvj9KrXLIs8uxFkePaOOAoz0p0OGtkDnzC2Xxnb9Kke0ia5lckOc73IyA2Pb8K50b7MqXjPBKki4wiO20nHBH/wBevc9P/wCQfbf9cl/kK8G1F5HnEVy2CACwVQeCQf5CvfLQj7JFjkbFwfXiu7CqzZ5uP2iQawSNGvCGKkQtgjqOK8Z8QwpPp7BsgR/vMr1JGevrXsusjOi3g9YW/lXlN3bhgUlYkbcYx0HpTxL5ZJiwKvFo8znmc7UNzIwLfKp4ABOcAdvSr2k6d51wYnLKd+ZCR0J7D8K6r/hG7MXEUpVn8vlVU8Z9avW+npJdM6EHByuBgL7+9YSqyasjpjRSd2RWVstupZIQzdBkfzrHvd8DSCNWMrckk/dznn611txClpbcOJZz0YdB+Fc2YVkm/fhnj3ZKjuaOaysW4X1KunGDyW85t7KcAHuKS9DOoDRDD5RecYBFOggdLkyJHjJwg3ZAPatQ6a8snyEFV++Dzk9T9KTlpYFFHInw7KPMh0t/KLLhnboOOcfhxV2z0JrC1toR85Bb5B0B9c11hi8gNAVEZzyR82aZBCUmViFXYccc/lUubLVOO5lQ6VPbskUgHA4C9s1vwKywrFHywwGPoKebdvPLMwBxls/pU8SJC45ZBgnkZyay1buaRsjQ0dVGsWaKo3LKNzHsPT+VejV5toUb/wBuWp3l1MgJyMV6SetelhfhZ5GPt7RW7HK6mhOrXDZwAQfrxWddSso+WPg9DnrWhrAYajOd21dwz+VZxVZnTaOF6EnrXLU+Nm9H4E2U5H8xOVAb6V5r4r0xklJK/NIc5x9a9Z8qM5Ckbj9ax9Y0mC8jKOPm+vWsZR0ujso1UpWPJLGN49vmDKIMAEY7dKS2WT7U7iPd5h+6APlHsTW1qeiyw3jRAbYScqMflV7T9CmmkiQYIxg4HAPuahSZtKCvcjhi3HzoIo4zxhgMEfifWt3StJe5nVlIUZyQvOR9a39P8NR26pubeB13d61obGG3l2IdvpgZpuLZn7aEFaJm22jBWB6ZOCeK2ERLeKNFRC3XnqBT3UAAZ4B61Gg3g43AVpGKWxyTqSqbsc7l9w5POAvrVdbUo4fG3rnkdalXIU7kOWbKnPShUfhBlcnPSmyU2kdPpIxpNv8A7v8AWuM+JyF0sMcAb8/pXaaWP+JXAB/drmfiB5f2e03n5stt/Su+t/BODDu1c87tJLWOMiQM2RjJ7e4FU7iCGNX8ooqk/fx8w74x71aQhLk7lBKnv0A9aju3jdWIBkJJB7AV5a0PZd29Dkb54lnIiCZJzkj/AFY9B7Vi3MEBbayvjjGD96uvudJgk3CSQozEHAHQVgtpLJJt8vz13kB+RxXZRqRS1Zx1aTbszOtX8uY+XM4b+EA4IrQbRZpE3JdZkc7jgcn8a1LPQkjJeRM4PGOa1obVoisR+Vs9FGaVTEWfulQw65feOVvbIWtrzucqoJckcGm2qpJGwmlKgD5S/cV1eqWMYs33xtnH3CevvWFbaaLoLHHE7Nu6Z6Uva+7qWqVn7osESi3cTXW2IDgdQx7YFXbMlrkFVyoA3nIpJtLlTcqRhdh2bSevrVJIBFeou2RETqCM5rL4le5sm1odR9q3YWSRQB3IPFel/DR2k0i8ZiTm4GCRjjaK8uiTzZl8pS6jqCNuOK9R+GnGkXn/AF8Y69PlFaYZ/vLHLi0lTOvu/wDj0l/3DXOdRgV0d3/x6y/7hrmvM+fGcYrum7HFQ2Y/O2gAuMgUZVqAwVflqbnRZ2HAevFPGMGolzmpMELxQZNDtvoaSgdKO1ALQY3v0pjp5iFexp+MmmtntSaTLTaOaHhC2XUTd7ixZs8it5I1jwqDGOKlPC8U0ZPTgVlGCizVzbRJa/8AH9D/AL4rbn/5DFn/ALkn8hWLa830H++K2p/+QxZ/7kn8hXTT2OGv8QzRf+PJ/wDro1YQ1q+tte1qWW3iXSLB13/Z4WkmlcxhmJAPAAx2Oa3dF/48n/66tXBeIPh9p/iLxPqN9c+KbnT5HdUa3t5QoACAcg9z/KtTAs+L9Wu7zRba+sGP9l3yyRyQXdvtcAwOyuh6jkYwfWup8F/8iHoOP+gdB/6LWvNL74b6boNv/aFv4qub17eOXZbTzKyvmFxgAd8H9K9M8F/8iHoP/YOg/wDRa0wNlvumvI/ErrB4l1AymOTz2xtHGMHv74r11hkVVk02zmYvNawux6lkBJrnrU3UjY6cPW9jLmseM2UsaWd2APMcwOigdST3B/Cn2wijukiV8yhCeBnB25498V6ZcXnh+y8S2mhPDAuoXkLzRRiIcquM89uv44NaJ03TI3JNtao2MklFBxXN9Ufc7Hj03flPDJI1e3M5ZivzAEdTIf73rUUTNBe20jSovylW8zllx0BHqTXu39n6QIwn2az2feA2rjPrSnTdIf71tZk5xyi9ar6tK2rJ+vK97HjkCSmSy8mSLGwyO0q58s5PBP49KprYi8iURRPNHnazKc7znJ/KvcBp2lKdgtrQHOMBV6+lKmnaYke6K2tVjUnlVUAUfVX3E8anujxUW4MaqjCFopfObn7y9AB+tTQy7YZmEg3ODuJGQAT3FerXD+H7XVbbT5orRbq6Rmjj2LkqoySfQcik1aTRdH0xryaxWeNSoKW1uJXOTgYUDkc1H1R9ylj0vsnlc0Sx6aWWRXj8wIMfx/4VPCTFbT4wiuhILNjkdK9cGm6adsX2W2B+8EKD88Vn65Poug6Hd6ndWUc1vaLvmWCJXYDPJx7daawj7g8emvhPG1OHgutym4/eOFTBwQMZx+Ne9WLFtPtyxyTEuc/QVTsbHSb+wt7y2sIPKuIlkTdCAdrDPPpWkkYRQBwAMAVvRoune5zYjEKslZWsVNWYDSLsuCR5TZx9K8ymcTbY1I2heMV60ygjBGQaZ9miA4jT/vmnWpe06iw+I9inpc8rREVVjJBUdcDk/jUqNEJJCCokPQHoorsvEfiOx8NS2KXllPL9umEEJgiDAyHop5GM+vSjQfEmleIZr+C2ikgutOl8q7guYdjxHqPYgjuKxWFfc6Pry/lOAeQTSBW6DjjpTJrRTn59gboFPXFet7LUbTiH5vu9Oay/Eeuad4Z0WTVL6EyW0QBfyEDMFzjOO457ULCve4PHL+U82is0jYqAWK9DnuatIgjhwuB82SzHjGOleoQPa3EEUsaoBKgkUMADgjPSn4tSuR5JGM9ulH1V9wWOt9k8qEWC7nDMDlj6ZqS0jQosikhRnP1r1RYYWGVSMg+gHNZeka5pOtXWo22nOkj6bObe4G3AV8Z49RzjPsaX1R9xvHX6HBqyrJIcZCjJB6mntsaNZZXZm7LnoK9LAtjyPJIxnIx0p6xQsoZURgehABo+qPuL695Hn2hq0ms20rHnzBgZzgV6GaQQopyqKD9KdgZropUvZxsclet7aXNY5LV8f2lPvJxkYA+lUMr5e4sv0A5/Cu6MSk5Kg/UUGFf7i/lWcsPzO9zSOJcY2scOJVVdykFj3ApGZH2732+5Fdx5SgfcXP0rntI8X6XrHiS/0KKKaDUbBd0sU8QXcucZU9COn50vq3mP60+xhva21xIxnCkDpnmrFrb29vny1jUdcYrR0rxnpGteItQ0fT45Xk084nmaILED2wxPOfb0q14k8Sad4X0Z9T1BHkto3RJPs6B2XcdoJHXGSKX1VdynjJNWMmOaLziqgD3zThOjSfIQB3zkmtG68V6PaQ37AtcPp8SSzw28RkkAfoAo5JxziteOWCRFZTGC+DtbAYexHr7U/q/mZ/WO6OaMoJC5B9akV0xhmj46Crmj+J9N1rVdW0+2SSOfSZRDc+dHtAJGQQe4xW2I0IBVVIxwaf1fzF7fyORe4hEjDdkZz14zTVuFfjeoweDXY+UvdFz9KTyl/uL+VL6su5X1l2tYraUQdLg2nPyVxvxLlER01mJyC+Bn6V3gQJwOPpWB4wl0Gy0xdQ8Txn7JAeZfLZhHnudvbpW1Sm5Q5UZ0aihUU5Hj8shnJfGATwnc0wBpWA2lFzkjsPavXdP8K+G9RsYb2209hFModC+9CQehwTkVaHgrQQf+PEf99t/jXB9Tqdz0nj6VtEzyKKODy2ec4cPgDbxQUhCgorMO+3tXr48H6IvSyX/vtv8AGj/hDtD5/wBCX5uvzt/jWiwskZPGQfQ8fdNrgRjLY5AHQUKSjZwFkPU4xXrzeC9COf8AQVyf9tv8a5q7vPA1vdRWVxa3IlkldIUFtOfNZfvbTj5se1L6rLoL65HqjmtQ23Vos07CIxADG3aGwKxolZ5AsS5QjkqOcV6Zp48H6tfpo9orSXH2ZbtYXWRT5bdG5+vSthPBuhoDtsVGf9tv8aJYWo+o4YyEeh5ADJxFBGpJzkBct9c1VKbpj5yOXPJI717Uvg/RY1YJZgBhg4dv8ayda0vwb4ftln1kRWqSvtQvI2529Bg5PUUvqk+5Sx0F0PMvKk+QqhWNGyTn+Zr0f4ZOzaTfFzkm65wf9kVfl8MeGYbq1tpLUCW5LeSm9zuwuT39KvaBJoiTX1hoTxlrOYJdKhJ2SFQcEnvitaOHlTndmFfExqw5UjVvD/ocv+4a5kD5iStdVLGJIyjdGGDiqP8AY1v/AHpf++h/hXVKNzmpVFA4q/a8+1gQbsHFa0DsIEEv3u9XtbXR9A0ubUdVuXgtogNzE5JJ4AAAySewFY8ut6bbW4nvbLWLYPA9xGssGC6Iu5vocc7Tg1l7KV7nS8RFo0lkyuRTtwI4qbRl03WtHttRsZZvIuYllQOQGCkZGRjirY02z2bxcNtJwG8wYz+VXysx9rEzgxFO4bmtE6baeWXM7bO7bxj88VnXVxptnq1jp7G7kkvi+ySJN8abVyd7AYXjpnrT5GHtUIQM5pPlHWtJNMtJD8k7sevDg/0oXTrOQ7UnZj6K4P8ASlyMftomU2KjLHvVmzfTb3UL60Q3cb2MixyPMmxHJXPyMRhh9K0F0e1kXKSuw9QwP9KXs2P20TJtD/psPf8AeCtufnWLI/7En8hTY9HgikWRWkJU5GSP8KfP/wAhiz/3ZP5CtIxsY1JqT0GaL/x4v/10avO/iB8MdO1PWrnxJe3qhGRfMgmufs6/KMZEgB59iDXomi/8eT/9dWrgPFHw11HxV4wuNSvrmKewQqtvZXM0gQYUZbC+p+nSrMjitE0PwHcrc3Xh291CPVrGCZjbXMpkRh5TqcMBtPXg5r2rwX/yIeg/9g6D/wBFrXLXXhvX9L8PSafpOn6LBZyJIs0NhE4kcGNgOvX5se9db4TtprPwdo9tdRtFPDYwpJG3VWCAEH8aANc0yRtiFiCQBk4GTTzSEZoA8j8T6Xrt+1r4u0yxmOp2mpCSG0a2YTGEfKUJzjBXn05q9PpV1deNv7Tmspm0q/Um+j1CPb9lUREb1fPA7FD35969O21HcW0V1bSW9zGssMqlHRxkMDwQRQB49beFr8fDrxBZfZ0vprNZrDSpIUDPLEzhwcjvyBn2rF1Lwnq7QaibTRb4SHT7BbUpEwImRl80j/awDz/jXvNpZW9hZxWtlCkEES7UjjXCqPQCptvFAHhXiLwzrF5qfiSa20e9Zrq7sHt5EiZSyoB5rKR09z1NXpNC12OLU47DTrpNOGvxXP2UQ8SW+3BKoeGGeSvevZ9tGKAPKYvCM+n+MtEnNjc39hDplxCZ54lZ1YsWRWHbAOB3A4rKi8IXcfwhiUaRdf295wiZSjGQIJ9/4Db3/D2r2vb70bfzoA830vRblvFet3Ou6Xd3FwLoXOl3kZKDyzEVEe4H5cf3T3OcZrjrfw94iXStXU6NfwrfaB9nSAguzTbyAGOcs2OrHFe87aNvvQBneHY5IfDGmRTI0ckdpEjowwVIUAg1o4oAxS0AFFFFAHB/E7TrvU/7Ais7W6nEGpxzzNbo2Y4x1bI6HntzXJr4X8RLBrqadaXS6TNq1vcAXOPtV3EGBlDH7zL0wG5wMV7ORQRgetAHjcnhzV2l0kzabcGzXxFNcxwhCTb2bZ4P91SedvpUfirwXqMdz4jsrHSZ7uzl0u2g0YR/OsBWQl1yT8p5yT3GK9KXxdpreKm8Oqt1/aKx+aU+ztt8v+9u6Y7Vf03VIdUtWnhiniVZGjxPEY2JU4PB7ZoA83sPDOsT+MJLjV1voYoWtp7No41YFVj2tCx52jk5Xv78VU8P+BpJ/AU639nfafq32maOKVEJaOJpQ4JQnDJ8oJHpkV7ASOtJuHrigDkNJudW0z4e7rvTGGoqXRIbSI/MSxAk2fwjncR2rntK0jVPCfxIS4hsZLzSdWsljvmt7dgscij5XYHqTznHqc16jkD2oGDQB4nD4M1QfDfzbbS7qPWIL5w8TZVpLYy7igXIBBAHH1FeoeENLbSdEa3El08bTvLGLlAhjDHdsCj7qgk4Fb2MUAYoAWk70tJQAtFFFACE4FeU634e1ifxRaeIPDtvNFepqEtrceYhTfbSjG/nqFPP5V6sRTXKxoXdgqqMkngAetAHi+oeFNSkn8bWunaXcmK5sreKwZ4iolMQAOD6/wA6ztT8Oa7c6b4pSDRr7N6NP+zoYT+8MezzD7Ywa9Vi8eaHNateW73MtisnlfbY7ZzCzZ28PjBGeMjj3rfuLhLa1lmcMViQuyou44AzwO9AHj2t+F9Sa38biDRJnl1GK2axeKEfMQqhsHqDnr9MmszUtOvNX8QeLrbR7K4fVGexa1dV2m3bgsSf4e5PrXtGha7Y+JNFt9V0qRntLgExs6FCcHHQ89QadbaLpdnqk+o2llDFeXHE0yLhpP8AePegDx++8N+Jm1zxBcW9jdGCfWbW4kxH/wAfMKptYhTwwDcle9er+E9LbR/D8FkZ7mZY2co1yAHCliQMDoBngdhWwDn+tOAxQAtFFFACYrjfizFLcfDTVLW2ilnnmVVjjiQszHeDwB7CuzpCM0AcDq2uungkafp8GpPcjTC0j2cbLJEVVRhSy43EnGPTJ7VxF5Fr6eEtfh2aikq6haTWaw+d8qkAvszzjrn+Qr3TZ70u33oA8X+IMUWiXltaxaveLa3lncPGtxPP+6mdhiXcoJ+XnCnp7Vc0m2vNQ8TQGLUrpbOG3tJLC7iSV47mIL+8XqFyxLbtwz+VelX3h+w1C9S8uI3FwsflebFIyEpnO04PIz2q1Db2+nWKQW0aw28CYWNF4VR2AFAHA/DHSpHtZr+/l1FLi1vbqOGKeWQKYXYFflbqMDg9qf41V2+JHg+WOGZ4rWaRp3SJmWMMuASQMDmur0XxPo/iGSdNHvBdNbttmwjDy2/unI6+1a1AHifxJstRfxhr95plvfecujRraS2qyDMwkBwCvU45xUmtXOvTeK7a6so9YxDdWJaV1fZtYfvAqgY2f3t2efSvV5Nf0yLXo9Eku0XUpojNHbtnc6DqR2rSAz3NAHhFvHrdv4xint11ZVHidupmKC1KEdDxsyfzrvPi7G1x4NS3t4Jbi4e6hZEiiZ2wrgseBxxXebfek2+9AHHX66tqepX13okKtLaWaW9mbhjErtIQ0jBsHooUZx1rH+Fen6lp+reKU1DTfsMb6gGTDswLbADtJUb177u5J4r0kL70baAFpabntWVqXiWw0u+Wzn86W48kztHBC0hSMHG846DOfyoAwfidoGo65odjJpEQuLjTr+K8+zE489VzlRnjPOefSreuXsus+Gb+C10m93y2MoHnQ7GR2QgIAeSTnHHHvWpbeItPvdQhtLdpWee1W7RjCwQxnGDuIxnnp1rSDAjINAHiem6FrVjZXKJouobH8Nw2zQxFoTJcK/I3euCee44FNvvDGvN4b1+0bSriRp9WtLmCKOLClNo3lVBwvQg4/rXt/GKwrrxhpNpd3EMjzutrKsM8scLPHFI2MKzAYB5H0yKAPK9St7zTluDe2l8tu3iE3NrZfZi6XEewnBjyCV4zgdOuKZomlmeXwy+jW15d29gL6K/ka0MZSR1bCMvPQsAOteqwX2heL5ryzaH7TJpdx5cqzRFTHJj+En27iti0tLXT7fyLKGOCJTnagwMnv9fegDwjSNB1nSNOgkvLTUNMij0K8ivLlEKsjlmZeScE4xjmuj+E32NfEV07C5t7yfT4FS3lsmhUpGApkDMTkkkZ/rXq88MN1byQXEaSxSKVdHUMGB6gj0qrp+kafphLafapCSu0lRzgds+ntQB5HrXh7Vri48QCHSLpkuNet7iACE4aJQQ7D0HX613Pw6tLyxXxBFd2k1rBJq801okqFR5LYxtB6DjpXYbh/jml3enP40APqjP/AMhiz/3ZP5Cq8XiOxk8SvoI85b5IPtG1oiFaPONwboeePwqxOf8Aic2f+5J/IUAM0T/jyf8A66tWjis7RP8Ajyf/AK6tWjQAYBooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAoPIoooA87vbW60r42LrlxZ3L6bcaX9nWeCFpQkgYHDBQSOnpVDxRYXTa14Xlksrww+ZeSXSxRSOEV1YoH2A/xEcetep5ooA8OstP8AEl9pXhu11MalDbfYp7d5TbyPJbT7zscjIOduArHIFdNb+F7+D4kSRSwy3Glanaw3VzLJnEc8R5HHALkg4Bxwa9K3CjIoA8Uj0fXZfCevS6j/AGh/aa29zDJbJbOfPcvujkD5+bHG3aOADnFdB8OYr628W6ik1vfQ2cmm2ZXz4pFQzKgEmNw+9nr616ZmigAooooAKKKKACiiigArI8U6bcax4V1PT7OTy7i6tnijYnGCRxWvRQBwngW4ay8EaXoGp6LdxXtrGtrNbNbnZwcF9+NhXHPWuatNP8Rx6+jyQ3gukvb6TUp2VyklqU/dKp6N/DhVyQQenNewUUAeBaVo+vweEdEhubDUVgh0q7iSBIZFaO8MhKFlHIOMYY8V0Xh3QNRu/HM0fiaK+O3TLRmmQyJG1zHgsQwwpPTPY163RQB5/wDDy31Wx1HULO/ilntlVXhv5onikfczHy3VuCwz95eoI59PQKKKACiiigAooooAKKKKACmuwRSzEAKMknsKdRQB4HNdXlt4P8Svps11BdSeJfNiMJZXaJnGWGOqkZ56Vdh1jX1s7+FZ7+TTIvEQSZwWZ0tCoPDfe257ivbto9BRgY6UAeG+MbOWz8R2f2K91C6+zaBdiG+dm81n3EoCwAyfT1A716x4Nurm98FaRc37u91JZxtMzjDF9ozn3zW1gelLQAUUUUAFFFFADa888e6J/aGuLe2b6ppmp2lp/o2o2MTSLNksfJdQDn1/GvRKWgDx2f8Ati18QfbNa0e7uivh9BNa2sMhiluQwIT5RtzwM/iKowaXrFvoOkj7PfS+bqHn62Bay7B5inaqpwzInQ7eM817hSHpxQBy3hjUza3EXhm6F/Nc2tosv225i2rOucdc9RwMVxmv6NqCeIrzVvC0WpWOqyXgjlsHhL2eoqCB5jEjavHUkjpXrAgiSZphGgkcAM4UAkDpk1kz+LtGt7y6tTdF5LP/AI+TFEzrBxnDsAQpx2NAHksthq1r4xuL210/UUkbxLFKZY7eXa1vghz0wVz1qa0t9bHi5LqSy1WCyf8AtCOd7oOzMMEp5jAY25+7xwMcmvabW7hvLSK5tnEkMqB43HRlPQ1m2OsaT4nhv7azlNwlvI1rdIVZCrY5U5weh7UAeL+FLbxDe+H9OuPCwvFuf7Gu1uLhywWSUk+UAzcFh2x0r0P4aabe2lhJdXkt4PtMEPmWdxA0YglVdrY3EkscZJ6Gut0jR7DQtPSx0m3W2tUJKxKSQueeMnitDOaAPFtJttZHjIXM2n6vDYSrqEc32kPIz9Sm4gYx/dwOB3NZPhXT/FFrFZJaW2pwXreH7mGRp4pVH2ncxTcWGN2Ole/0UAeU+B9NuYPHGm3Y0u+gi/sBILmaeNl/0jflgS3U+9ekT/8AIYs/9yT+Qq9VG4/5DNn/ALkn8hQAzRP+PJ/+ujVo1jWl9Bp0Lx3G5TvJ4Qnipf8AhItP/wCej/8Aftv8KANSisv/AISLTv8Ano//AH7b/Cj/AISLTv8Ano//AH7b/CgDUorL/wCEi07/AJ6P/wB+2/wo/wCEi07/AJ6P/wB+2/woA1KKy/8AhItO/wCej/8Aftv8KP8AhItO/wCej/8Aftv8KANSisv/AISLTv8Ano//AH7b/Cj/AISLTv8Ano//AH7b/CgDUorL/wCEi07/AJ6P/wB+2/wo/wCEi07/AJ6P/wB+2/woA1KKy/8AhItO/wCej/8Aftv8KP8AhItO/wCej/8Aftv8KANSisv/AISLTv8Ano//AH7b/Cj/AISLTv8Ano//AH7b/CgDUorL/wCEi07/AJ6P/wB+2/wo/wCEi07/AJ6P/wB+2/woA1KKy/8AhItO/wCej/8Aftv8KP8AhItO/wCej/8Aftv8KANSisv/AISLTv8Ano//AH7b/Cj/AISLTv8Ano//AH7b/CgDUxRisv8A4SLTv+ej/wDftv8ACj/hItO/56P/AN+2/wAKANMqD1owKzP+Ei07/no//ftv8KP+Ei07/no//ftv8KANTFFZf/CRad/z0f8A79t/hR/wkWnf89H/AO/bf4UAalFZf/CRad/z0f8A79t/hR/wkWnf89H/AO/bf4UAalFZf/CRad/z0f8A79t/hR/wkWnf89H/AO/bf4UAalFZf/CRad/z0f8A79t/hR/wkWnf89H/AO/bf4UAalFZf/CRad/z0f8A79t/hR/wkWnf89H/AO/bf4UAalFZf/CRad/z0f8A79t/hR/wkWnf89H/AO/bf4UAalFZf/CRad/z0f8A79t/hR/wkWnf89H/AO/bf4UAalFZf/CRad/z0f8A79t/hR/wkWnf89H/AO/bf4UAalFZf/CRad/z0f8A79t/hR/wkWnf89H/AO/bf4UAalFZf/CRad/z0f8A79t/hR/wkWnf89H/AO/bf4UAalFZf/CRad/z0f8A79t/hR/wkWnf89H/AO/bf4UAalFZf/CRad/z0f8A79t/hR/wkWnf89H/AO/bf4UAalFZf/CRad/z0f8A79t/hR/wkWnf89H/AO/bf4UAalFZf/CRad/z0f8A79t/hR/wkWnf89H/AO/bf4UAalFZf/CRad/z0f8A79t/hR/wkWnf89H/AO/bf4UAalFZf/CRad/z0f8A79t/hR/wkWnf89H/AO/bf4UAaYGDS1l/8JFp3/PR/wDv23+FH/CRad/z0f8A79t/hQBqUVl/8JFp3/PR/wDv23+FH/CRad/z0f8A79t/hQBoTKzRMqNtYqQD6GvM/hu0nhHR9S0XxFaXMeoLfTTb1t3kF4rnIZWAIbPpmu8/4SHTv+ej/wDftv8ACk/4SDTf+ej/APftv8KAPMPEq+JIvEV3HpsN/byBrIaNFbhhEibv3oOPk4Gd27tWZYx6vDqOpkQX0OmS+J2l1AxQyKzwFCARgZKbupGe1ex/8JBp3/PR/wDv23+FH/CQad/z0f8A79t/hQB5TpseuXd94Tttbk1aNLn7bFOwaVW8huIPMYdD1wTzXsdnbLZ2cNujySLEgQPK+5mAGMk9z71S/wCEg07/AJ6P/wB+2/wo/wCEh07/AJ6P/wB+2/woA1KKy/8AhItO/wCej/8Aftv8KP8AhItO/wCej/8Aftv8KANSqNx/yGbP/ck/pUP/AAkWnf8APR/+/bf4UQ3cN/qkD25ZhGj5JUjrigC3LZRy/eFQ/wBlQ/3alooAi/sqH0o/sqH0qWigCL+yofSj+yofSpaKAIv7Lh9BR/ZUPpUtFAEX9lQ+lH9lQ+lS0UARf2VD6Uf2VD6VLRQBF/ZUPpR/ZUPpUtFAEX9lQ+lH9lQ+lS0UARf2VD6Uf2VD6VLRQBF/ZUPpR/ZUPpUuKMUARf2VD6Uf2VD6VL+dJQBH/ZUPpR/ZUPpUuPTNFAEX9lQ+lH9lQ+lS4+tH50ARf2VD6Uf2VD6VLR9KAIv7Kh9KP7Kh9Klx60fnQBF/ZUPpR/ZUPpUtFAEX9lQ+lH9lQ+lS0YoAi/sqH0o/sqH0qXFJQBH/AGVD6Uf2VD6VLRQBF/ZUPpR/ZUPpUtAGegoAi/sqH0o/sqH0qWigCL+yofSj+yofSpaKAIv7Kh9KP7Kh9KloxQBF/ZUPpR/ZUPpUtFAEX9lQ+lH9lQ+lS0lAEf8AZUPpR/ZUPpUuPajFAEX9lQ+lH9lQ+lS4oxQBF/ZUPpR/ZUPpUtFAEX9lQ+lH9lQ+lS0UARf2VD6Uf2VD6VLRQBF/ZUPpR/ZUPpUtFAEX9lQ+lH9lQ/3RUtFAEX9lQ/3RR/ZUPpUtFAEX9lQ+lH9lQ+lS0UARf2VD6Uf2VD6VLRQBF/ZcPoKsW9qluxKDHGKZUkP3z9KAI6KKKACiiigApKKWgBM0tGKKACiiigAooooAKKKKACiiigArP159Qi8N6lJoiLJqSWsrWiN0aUKdg/PFaFZ+uw6lc+H72LQrlbTUmhP2WZ1yqydsjB47fjQB53p1n4Z1DT4V0fxFd6d4t2K4nvryZJmn6lZIpDhlJyCoXGOnatX4ieHLVfDWp64LjUYdSWOMl7fUriOMNuVTiMOFHHt+tO1++vPEnhmfSb7wPfT380JQJOkZgikI4cTbuADzkc8dM1q+JdH1C7+G0ukw5vL/AOywxFs4MrqU3Nk+uCaAG3tlpXw90LVNXsvt0rrDtWO4vprjzJM4jRRIzYJZgOPWqfgc6loV9qXh3xDey3k0UaajBcTNuZo5B+8XPosqvgejLV/xdoc3ibVNJ06RZ00qKVry6ngmMTB0x5KgqdwO47sj+4KzLvwZPo3iHSNb0GfUr+SKY217De38k++1kGH2+YxxtYI/HXFAEOi6XZeL9DXxV4wnlaO93S2sH22SCCzg3EIAFZRuIwSx5ycDAp1w1xpvw68WxWmvR6nb2thcSafcx3Xm3EC+SxCu47qw+Vs5x15FP0yG78L6Q/hnVfD91relwuyWU1tCkyyQFiyxyIx4Zfu5xg4B46Vk2/hXVGt/HkkOgw6YmtaQsNhZwBFwwjmXa23jeSwJ7DcBnigBulx/Dq4tbMP4ku3upETK/wBvXeS5A4x5mOtXddfSH8aX8fj+4urewjSIaWrSyxWpXb87FkIBk3cfOeABjvW1YeI9TttPtreTwdrYaKJI2IFvjIAH/PX2qSbVtb0fWb9NQ0m91XTJ3WSzlsY0kaFdoDROmQfvAkNznOOMUAWPCNo9nY3KwawuraU82/TpfOMzxxlRmNpCTvw2cEknBwelUvEDXWueLLTwxDdTWdj9ka+1CS3cpLKm8IkSuOVBJJJGDhcZGaj8F6Rc2mua9qv9mHRbHUZIjBp5Kg7lUh5mVTtQtkDA/u5PJqzr9hqVn4lsfEui25vmigezvbJWCvLCzBlZCcDcrDocZBIzQBla/pVt4Cs4/EPh97m3t7eeJb+za5klinhdwrNtdjh13bgwx0wc5rCkuPDVz8QfFsXi7Xbq1e3vYUtIhqs9uqxm3jJwqOB94k9K6XVzf+NorfSF0a+07TGuI5b+4v0WMtGjB/LRckksQATwAM9aveGtKvLDxZ4uvLqDy4dQv4pbZyQfMQW8aE+3zKRzQBp+HbfTLfQ4Boc8lxYyZeKWS5ecsCeTvckn864/w9fX9r8UtaF1eSzadqN5JaQwyOSsE0MUcgC56bld+P8AYr0SuEv/AA3qsuleIprOHZqUetDVNL3MB5pSOLAz2D7XTn1oAz/E2s3l18WfD9tYXk0djp9+lrdRxuQs00sMkhVvXaqocer1TM3hO48V+JV8Wa9dW1zDqRSKIatcQBY/LQjCI4GMk9q1oPCupRWnhWZ7bffDWm1TVmDj5Gkik3c99pZEGOwFWtPutV0DXPEAbwzqd7FeaibmGe18kqyGNB/FIDnKntQBE7WFm/hBPDF/cT6dc6u4aRrySfzR5EuQWdiSMqOOgIrvB1Ari9el1TUv+Ef1a38PagG0/U2lms2MQm2eS67h8+0jLjvU2pa9r1/pF5a6V4Z1WzvZYSkE9yYRHGx43HbITxnPTtQBjW+q3zeNIPE/22VtEvL99GSAv+62j5UmA6ZMysue4YVJ4vv9c074jWt5o0sk8FjpLXF1p2TtuY/O2vtH/PRV5X1xjvUl38JNJbwq2j2WpazEI7fZbbtTmaKKRRlH8vdt4YBsYxxWjo1prNz4r07WNXsjbSf2GLe5G5Ttn80MV4P1NADdV1hLnxZ4KurC8ZtPvRdSkxudsqeRuUsO+Ovsao+G9FtfHeiw+JvEjXVydRBltLVbuSKK0hydiqqMAWxgljk5PpUMfg7UNK+Jektp0CyeGkkuroqW/wCPSWWMh0AP8DMdwA6EtV7QpNR8E6aNAm0TUNQsrNmSwu7FFl3wkkqjjIKsuduehwDntQBQvrrUND0fxd4dm1C4uFs9JN9p107kzxxOHXYz9WKuhw3XBGelavg3WpLLwXcReJLndcaAGhu7hzkyRou5JSe5aMqfrmqdxoWs6tpHirVb+0EOoarYGzsbAOC0MKq21XbpvZnZjg4HAyaZ4h8L6rea5aW9lbq+kavBBDrRLgGIQEMMDvvUshx6CgCL4Y6hqVxP4mu9fuJd0k8N2IpXJFqkkIkEYB6bQRn3FN8MarqEHiu11LVrqdrPxcJWtIJG+S2aPmFFHbfCCx9WFS6xoOuXNz4qtbG3aKHXry0gNyrgeXbeUqTuO+QoZR7kU/XPhxBHool0K61aXUNOZLnT4rnU5pY1ljOVG12KjIyvTgGgDt768i0/Trm9uCRDbQvNJj+6qkn9BXF6F4Vt/FOh22u+KZby6vtSiW4VUvJYktEcZVIlRgBgEfNySc812bxJqGnNDdxER3MOyWJuoDLhlOPriuT0W/1bwtpEOh32g6jqJsUEFreWKpIlxGvCFssCjbcA547g0AaMM974R8IX1xr17/aK6eJHgmx+9liH+rV/V/4cjrwepNY3gabVtG1q40DxPdyXN9fWyatFJI2QGY4nhX0VH24Ho1Q3WgeJdftLLT9daVLbUtRe+1EQ3GBZwIAYbZGBByWCEkdw3tVnUPBbaVqela3ok2q6he2N2oeK81GSfdbyfLKFEjEA4w3bOwUAZPh3Xr/RvFms3GrXks2h32uTWKtKxK2MwC+WMnoj52+gbHrW/q+u3Gh/8JZfxgzSWccH2eGRjs3tGAox2BYjOKfoXhtpNK8Tadrtp/o2p6rcyKhIO+JwoDDHTkHHcEVm6X4U1q90XxJo/iSZQ1wEtrTUI+TMiIBHMw7MMDcPVTjrQBfT4d2c1n5mrajqVzrTjdJqkd7LG6SHvGobaig9FxjHUGsTxUyWupeE7HxxrLQwtDdC6uLa6ktVmkVV2ElCpz3x0yTW9B4n8QW+nrb6j4Uv59XRNrG1KG1mccbhIW+VSecEZHoazp9P1/Sb/wALX93aXWvXFlDdC+e2ZCweXBAG9lyoPyj2AoAXR4vCCpqM/hXWbm8vIbKViratcXARdv3truR1xz1rnPDqeB5vBOm3upeLLqHUnsY5Z5F8Qz+YkpQEkJ5hGc/w49sV3w1i/wBXtruzbw3qliZLaQLLc+SELbSAvyyE5JPpUfhnw3BB8P8AS9K1fTrcTrp0VvcxPEp+bywrAnvQBd8JT6hc+EdMm1ncb54AZS67Wb0JHYkYJHqTWxmsXwfa3tj4N0u01VXS7toBC4dgx+UkA578AVt4oAKTNLRQAUUUUAFFFFABRRSGgBaKKKAEzS0UUAJmloooATNSQ/fP0plSQ/fP0oAjooooAKKKKACiiigAooooAKKTNLQAUUUUAFFFFABRRRQAUlLSUALRSCloAKKM0UAFFJS0AFFJiloAKKKSgBaKKSgBaKKKACiiigAopKWgAooooAKKKTNABS0UUAIaWiigAopM0tABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRSZpaACiiigAopM0tABRRRQAhpaKSgBaKKKACpIfvn6VHUkP3z9KAI6KKRmCqWYgAdST0oAWo5p4rePfPIsaf3nOBWPqPiWC3JjswJn/AL/8I/xrlrq8ub2QvczM57ZHA+grirYuENI6s9PD5dUq6y0R3P8Aa+mj/l+t/wDv4KDq2nDrfW//AH8FeevGXxn1zkCnsc8ld3+1iub69PsjueU0/wCZne/21pnfULf/AL+Cnf2vp3/P9b/9/BXnzFAv7zCg9M01XQuNs+CP9oUfXp9hf2VT6SZ6EdY00db+3/7+Cnf2rp4Gft1vj18wVwHl7uhznvR9nweMZ+tH16fYP7KpfzM77+19O/5/rf8A7+CmHXNKDYOpWoPoZRXC+X2Kg/hTQoPQD8qf16f8of2VS/mZ3v8AbWmf9BC2/wC/go/trTDn/iYW3/fwVwXlnHLY/ACjyD/eJJPqKPrs+wf2XS/mZ339sab/AM/9t/38FSQ6lZXEojt7uGRyCQquCTXluq6ja6TbO88q+aFysQbljVHwBqtxqnxEtJbsqoW3lCopyq/L/OrhjJSmotGdXLKcKbmpPQ9pprukaF5GCKBksTgCsrUfEFtZfJDieXuFPC/U1yt9qd3qEhM8p2dkA+UfhW9bFQp6LVnHh8BUravRHaf2xpo5N9b4/wCugpTq2nDrfW//AH8Feeum9cH5gfanFtseZOQo+83auT69P+U9F5TT/mZ339taZ/z/ANv/AN/BThq+nEZF9b4/66CvCdZ+I9lazNb6ZbTXzqSrtChKj/gXQ/hXO3XxK1k4EekTx49D/gK2WIrP7KI/syj0kz6XOsaaP+X+3/7+Cnf2rp+M/brfH/XQV8x2nxTvElEWoRGIk8mRTwK7DQ/FkWpzFZlVPTmlLE1Y7xEstov7TPa/7X07/n+t/wDv4KY2t6Wn3tRtgfeUVwgTIGQDkelG0ZOAPTpWf16fYv8Asql/MzvP7a0v/oIW3/fwUf21ph6ahbf9/BXBeWccnH4Cg2+edxPPrR9dn2D+y6X8zO+/tjTf+ghbf9/BT4tUsJpVjhvYHkc4VRIMt9K8x1K9tNLhZ7udUYLlUDfM34VieEdYudW+ImivcbURJX2IvIH7t+T71UcbJyUWiKmV0403JSeiPc6a8ixxl5GCqoyWY4ArL1DxBbWeUiPny9wp4X6muUv9TutQkJnlOzsgHyj8K6K2KhT0WrOPD4CpW1eiO0/tjTcZN/b4/wCugpTq2njrfW4/7aCvO5yFhdnwVAyeK53VfHNjp1vtSOS8uMALGmBj/eY8AfU1zRxlSW0TveV0o7yZ7J/bOmf9BC3/AO/gpf7X07/n+t8f9dBXzRdfETXpIysS6XZhjkebKZWx/wABOKpJ478YQlSsljcIpz+6Kkn2xuz+laqvV7In+zKa6s+pDq+mjrf2/wD38FL/AGrp5GRfW5H/AF0FfM1v8S727vBFfRNaSnomDg/n0/Guo0/xcktwEuSvI4IPWpeJqreIv7No/wAzPcf7W07/AJ/rf/v4Kadb0tfvajbD6yiuAgZZ4UkUAhhnpT9gyQAPTpWf12f8pf8AZdL+Znef21pf/QRtv+/goGtaYemoW3/fwVwRjOOTt/4CKDATzuz+NH12fYP7KpfzM77+2NN/6CFt/wB/BTo9UsJpFjhvIHdzhVEgy30rzLUb210uFnuplRgpZU3fM34VheFdYuNW+IWitcbURJm2IpyAdjdff9KqONk5JNEVMspxg5KT0PdaQkBck4A65rO1DXbSwG3d5sv/ADzQ9Pqe1crqOs3eoPhnKRdo1HH4+tdNXFQp6bs4cPgatbXZHYHV9OHW+t+PWQUf2vp23P263weh8wV57IQqney49xisjVPElppNmxP70qvyJkZY+g/xPArkWNqN2UT0XlVNK7kz1j+2dMz/AMf9v/38FMfXtIiXdLqtnGM4y8yr/M18t694x1HV5ismozWlrji3sFwCP9qQkE/lj2rl5IdPlz5q3TMRuMhnBJH4rXRGvP7RP9lReqbPs4a1phyRqFsQOuJRxThq2nMMrfW5HqJBXxraI9tOH0jVLi2mwSu47OfQsDj8xit7SvHet6ZcJa6vmRX4WVsZJ+oOCO2RTdep0SF/ZkF8TZ9Wf2vp3/P9b/8AfwU1ta0tPvajbD6yCvAtN8aMkw83DRk8qecfjXX6dqZ1GT91ABGOrCsJYuovsgstov7TPTv7a0vtqFt/38FA1rSz/wAxC2/7+CuC8s884/AUeRkZLE+gzU/XZ9i/7KpfzM74axppHF/bf9/BSrq2nSMFS+tyzHAAkHJ9K83vZ7bTofMvJ1iHbJ5b6CuUsNduNW8UaYr4jgW9jKoOc/MME96axsrpNClldNRbUme/d6CQoyxwB1J7Vn6jrVrp4IZvNl/uIen19K4zVfEsl47iaby4l/5ZqMD8fWuqriIU9N2edh8FUravRdzuP7X04ZzfW/HX94Kjn13Sba3e4uNTtYoY1LvI8oCqo7k+leN6v4oS1TzISJFX7y4rzjxH4ru9cYLcq32VBiO3+8gPXJAPzN9eB+tYwxNSW6PQ/sum3aMm2eueIf2gdJtZ3tfCmnTa3Mv/AC2JMcX4cFj+WK4y8+NXxFk3vb6fZ28ZO5RHaM7KPTljn8s15y93ceWFM+Uc42K21R7YGKi3BZX28FB8gy3B9j1/WqdaTO2nllGMbNXZ6hpv7RniC1vtmu6PZXEe4KyQ7oJB7jJOfpivWPC/xY8KeKpDDa34tLof8u14RG7f7vOG/Cvlxb2ZvLRpvNQ9fMUOCPTBH+FRTWkNxcs1hut5Vfeqb+rdcIRyD6A/TNVGszGtllNq60PtH+19N/5/7f8A7+CmtrWlr97UbYfWUV8uaF401BtOEN47SzR/I7N94+mffFb1p4guJHVWlbCjqPX0qHiKi6I5P7PpbNs+hf7a0s/8xC2/7+Cga1pfP/Ewtv8Av4K8cstUkZkYyhh/GuOa6RI/MjDhiQenIrN4ya6Gscsov7TPQP7Y03/oIW3/AH8FWLPUbK4n8u3u4ZXIOFVwSfwry3ULq20yBpLqZUIUsF3ct+FVfh3rNzq3xBtGnwiLDLtjU5AO08n3pwxkpTUWtyKuW04U5TjJ6I9M1XX7XSxtP7ybsgYAD6muK1TxT9sYi6v4I4wceWjfKPqf8a5vxEVh1/UF2P5Zun3fPjfk9AODWPsEbOU3eWTtWNcsOnXgkj8eK4K+MnOTj0PRwmAp04Ka1Z28bJIu6N0cHurLg/rQzhGy7xquOhYZ/SuGLyGTMUhBOBsGFb/x09PqKXypDHLA4iVF5bzrjcPrgFRXL7XQ7+RnaR6lbSo5juY2VDhioPX64rC8T+KJtH0/zrVEfJx5mcgfQdzWXCySRqFEk0ca4BZDsX6KvH5msvXLJrjTWUTsHcbhEAFQ4+n9adOquZJg6ZyV/wCJNS1CRpLi5ujuOcLIFx+S1Wj1e6STm+vRg5+dw4/I44/GopbaSEMbhdvYAc/rSRW000irGrgN0Y16l42MrR7He+Gda164mjRpvMhYYDluP8RXokF7B/qHu4XnUfMoPI/SvP8AQ7X7FYwxuqSqy5YNGevsRzV6RhcTRIW+dCSiXAxx7NkMK82pWvLRFqlbqd4rEjKgH0IIOahur6O2XNxPFAOg3sBmuIY3HmO4EimP5WZbjdj8Mbv1pFkK8ufMbOcov9QSxqPbD9md1DeWk5wl1ExxyBJ/SsnxB4jXRWjihQSzuNxBcgKnr+dc9GPKLPMzyOeUk3EEZHXGTgfWql/bXF9fDYPLKou6R2B656Y9fxqo1HJ2sJ0+XVsWGx1HxJM97IVQStzOx2qvsvrj2rqNLttP0KN1hu0MxH7yQ5ZsenA4FYFqFtbU+UGBYjdJv2E/h3z7Ujxp5vmRoIhjPlqMliexXOT9RzUOpyyKUOaJ2cFxDcrvgnjkHqrLUjMFbmSNQOoLgn8hXCyOcqA5jcD7rKMn6YwwpwjnEjRt5Q3ruYyTMwP1AI/U0/a+Qcr7nYjU7eTzY4LqNnjHzBATj8cda8+8a+IL7yfssUvyudpAbOR1+b6+n51oRbDCIo1eeOPJIC/uhnvtHb3zXJ65bI4847A7cMAQvHb5RWtGpeWpMoWOZkM8nMshdiBgM/5jHSm+XKOVx1JGDjPtU4ifzmXoo6H2+pqFgFXKBgOoJ6GvSDmJFmn8kRTL50KjBikGVOeuPT6ivQvBugx2kmL6ZIQ43QJIcuynke3GcfhXEaXAr3caOSQ5AAYZ5rvgsIjFu2YVyGRJVzEPpnGB7giuWvWcFyoORT1PQImAQBGRgBgEOKbcX0dtHuuJ44RjOWcVxDpcNMQMbol4MdwTj6A5P5GmxuSTuYyscHCKD/i2fyri9qP2ep3MF/aTEAXUZbGcbsfzrO8Qa/HosUawhZZ5jlF3YG0dScVzSKqyGWYGXjKjJDKfYbsj6nmq2oQzX08SpxtTJkLBgeevHT+dONRt2sJ07K7Y6O01LxPdPfSARo5x5rHaqAcYU9yK6TS7PTdDVvLukafHzyNlmHHbAOKwrVVtLT92WzkBpRIFz9B/hQ8SeZ5kaeWu3PlqM7jnuucn6jmpdS0ti1C6OzguILlA8E8cg9VZac7bekka46guCc/QVw0jk7R5hRwPusBz9MYYU5Y5hIY28oCRdzGSZmB+oBH60/a+QuR7XH6vqtzPFco9zEFTO4R7s47DgYz9TXmNwk08pedgFI+6D0/Dv/Ouy1i3M9qIoFa4iQ52ghIwfUDv+ZrjbpG87J67sZAxn2ruoz5kZqKi3cha3A5MqruYYyD/AJxTPKdGDBlO0k/Ke/pzUvlqcEgOG/u85FM2HzCqg4PXnvXQVzlm2hlvj9hkbdvz5bSHiN8ZG09QOxH+Fd3pfhcO1ut/cQwS8N5ZY598cc/hXIaLFE95CrfP82ORuGK7twnkpBJviTcGRJxmP9cEfga5K9dwdkT7NVHc7q1RIYlSAqVA4+cGi4vorWPNxcRQjHVnFcQ6XBlIGN0S5DR3BOPoDk/kabG7ZO5jKTjhFBx/Nv5Vye2L9l0O5gv7OYgC6iLY6bsfzrO1/X00aGMQqss8p+Rd3G0dScZrmkRVcyTZl4DKCcMp9huyPqearX8M19cRqnBVATKXDZ5PPHT+dONRt2sJ07K7Y1YtQ8T3stzgZOAXZtqxjoMGun0exsdBOUvFe6xy/LEcdgM471g2ca2kb7MFwMGTdsP1B7j2FOkijdkcJ5PBLED5mP4nB/nSdRxkUoc0TsIL22ugTBcxyHPPzBf0PNSs6ZwJY1I5OXBP5Vw8r/KEYmEgnGQCPpjGfyNCpKJEBMeJBgl5XP5qD/Wj2ocrNfW9S8yRoo7mMeWc/IpbA9+OK898U3El3cRw28uUVcswHVs+/Ycfj9BXQX0ZbT5ILRWmw29vLXbH+AHX864+5QLuO1QzEcIeo9K66E7q5m4pSM0WyIuGfIYfNs7n8ehpDBE0hAmYNt6n0pWiPnMoXdz8uASCKa0axsQVKkdMenv7V1lcwxoGjYlHV/4QS3Qf1qxbRCeB7SUYjcHy3kIASQcjBz0P3T9R6VAq5bEZYHIwQQen9cVPbwgyhJDtXdwwXIx70XtqTKXNGzOy8OeG7q7U/aBEiYBUiRST+Veh2ENvoenrG88cY/idnFcRp1sywxRxCHhdyskrJ+mcVbjchmy5dyMbVAyPrnLGvOqYht2QoUdLs7iHUrKUKDdRknpnIz+YqrrusxaRYiWHbLLIdsK54ZvfFcosaNLvkTzFwcxsMbT6AZz+JqDUUe9WGJAP4iWd92BxwR1GKzjVbdrFunZXuDtqniq+MohLiMbBjIjjHX7x710GkaTZaERLPeRPdYzvZ87foP61jWEP2SFxH5kkmMM4YBR78+n1pz/O6ywM8RALO25mLfUZyR7ik6nLIpQvHQ7KG4iu18yCaOYdyjA/1rn9ReaVJiIQiknliBWSznrERHgk/MoHH1yGz+dRXcksULGRJGMq9WuMZH0Az+Zq4VddiZQdtzntcnjgtpIVuPMnkHAUYEY7nPUnHt61zawwiQSIx9M4A7d6s3zM8hVzEUDk7EHH5jmqMmQDgIAp4J4P+NejF3RlS91WQ8RfJmRUCbskUgWJlIaNXwNwyuPrj1pivlvlUnA+bPGPx4pvmgLsKMH5+bsPfA7VRfNckkhjDlgSpI+8QDgdsfn61GUMe1Y5dqgAlgWDD9eaA4DEP0B24B+77Zp8DHzBEM4/utzhvT2oY+dpamhDD51680ZiYzEOwVgpEn8XX1PPfrXSWNhOsbSuBA6jqWGD9ax9Gil+0fKhwg/vA4/TNdfCGSIecUk6fdUHA+uSc/QVzVcQo9DnjR53uXNKsZpJomE0bFRkqsgzn/CtvU9cOhWUYlHmXEp+VC2AFHU5rAQYZpbhpJVIBjOWXb9ATn8TVTUIrm9uo1QEOsYJkdhjqeRjt+dcvt3N2sbqgoK7ZVu7y51u9e5kVnkfG0J0Qdq7j4Wwrb+MYY4n35hkLuQOeO3euTij8iEopIX+NiuNx/z0rsvhku7xopByVt5GPH+7znvya6qEf3kWzjxc/wBzJLaxe8QabbR+Jrgvaed9omZmaF+d2BjI4P1we/aqWLaaTMdvGoYPtNxDgHn5eT+OfpVjxM4j8TXxVZ05dPMR8BnYLgAKfbHTPB61RMjRAlRF5SzKpw+2NWIxjpnIyD+P1qZ8qm7LqRScnSjd9EMa0s5bPcbKKZjHl2iAwrduhHbB4yRTVhgaIyfYkzvEYkGWKHPPyE4OP51OzRhIU80zySRlBCmVO8DIyM9uetMXT7o2p1AxvLD8xMxjAQnjkjqADnntg8is+VPZG3O0tWN82ZRlQse8b1AgAUc4BJ54+b5snPFOKwSyN5sEIXdgM8e45UfNwnI6E5Pr2qK3X927EKGiZAx3Hy/Lz97bnnPzH049qklMUd0yI6unJeS3iG5w43YOCcdMUrKwXd9CsLC3uYMfY7aFndiS0Zb5sZ2kHn8cjp+FR2+kaVFdZj0+GMSR4yS7KSeh2j19OOtWRcR288TuQjOHZzEuD8x6Fejdxnt9KInhIhlBCnJCtGC75B4yfT6eop82lh6kmFQFba2jh+7tZEU7k6fKDyGOcgH0HNMlYuryTQwyx8jcLfG7afujoegJyehNOj8s2kxzbJMqBAGQBnY/NnrlSCf1ps6/6e0YjZhuAJdy7EngovPzdQQO+ehpNaCTae42WztfOEcmn7V3B9gdmJXIGevqTVgWlrHJGFs7eJmZt6OAWAwSMcnJIwc8ikksLmxniW5glVX5aMoAXXJ6MOmODj8OKbLOgs0n+0RTlleQo54CkcAtnjggcjnFNRS3QnNvqTCGzkzHNany2XIMERAYhznB78bfzrE1GNIZ0CwpCHRZNrfM3I74GK2GkMFwDPIytGU3MG/eIvTI28bT655wc9qwNTLm6C7HUhAAWfJIJPqT61StfYE5Wtc1NH05P7PSW4tRM7SBWVSVcIcY5PBHftx61oAweaVW2EcCkKRNGCqkKcjOcjnb370X+y3uo2kg/dxLGZZQ+0qApAAH/wBfvVZnaOHKuilYgzqzFMgNkbuu7JyPw96Goxb0FeUluSRwQSREvbW90ys5lEaKoVQSPbnPTk5FVoUjjtGL2MDeSnKH5SpIG0AZx3PWrTmOOMG4cuyynMJUr5iueB/u5x1z0pbbSL+6jecW88qofmAwSMAgqueTjgZ7/Wp5b7IfPyrVkG6cKVIYo4KZSFAfl5OccKcjr6Guf8QaU/8AZ4+ziGVkxvdcFnJ5AC4zjnGOvHpW9BE0pkAhjYrEzI65ReuTkDqRkADpTr5Irg+WknmqyrIzrGNy4+UHr0xzk+vvTi+XUafvHjVx98nCovY45+lIFkBXCYUgqN+Oa7LWPC6rOlzEJCZG/wBR5ZDL75/L86is/CjyXIVifL8zk43OAefTGf8AA10qpGxrcyfB8cg1xGiWNDGC+8j5ePUHPB6V6THFcI0u9WZSfKG+BSQcZxz1PPOOMCqOh6ZDYzy3E220ZcybJEDNICTgdeRgDp61flhMUiIyqrKiNIXJdc44C5P8XTB9O/Q4VJc2pm3rYdNFbkJ/xL4gkq7xGpLEqBknrgfge496ttbW0c0Sra20D+aAUlRTlD36n0boeKbPpd3YlJZ7eWMTMVCEKBLk52kjpwD1pUniMXmwTE7ZC4iIJwq5HPJIHHXoM8VCjy7olzclo9B8Ytn/AHUlo0iuWUeVGAp4BGCCOgB79fwrF1RFiaLy4Fh8zJ2t8zcMQM+/Hqa0dzGENIykiJZF2sWIUHJKEY24wR/+qsXVnK3BZU2I26SNjJkkEkg/5/WqVr7Auba5qaRp8TafHPLbLOZZMEIxVvLJ4I7e+OKv7oDNtS18uFWCMJo1KqQpyOuRyV6moJAlqLTfCSkMMZkm83BUbTgD8yeT3FIZDHDlXVNsIZgxKZG7I3dd2Tkfh70NRTegryktx8UNu8bF7aC6dXcyiNFUBASPYZz05ORVeFIktXL2MLeSnK/dKkgbQBnBPf8AH8KssY44wbly7rKcwlSN6ueAf9np1yOKW20i/uUkuEt5pEjPzYwduAQUXPJxwMjr9anl5tkPncVq9DLvrN7lcOu/erKo8pAQVGe33WyOvoa821W1ntJWjna3mI+UPGc7h/X616PMiBnLR7pPJYxNEpAOeTx3IJAA4FeeavD5d4+ZJc8NmSMA/UgHFbUtDWOphL/rCAv3R1Hb/wCvUgPmSJuiXHQhh196GOJcjcADnaBSxx78HDct1VckfjXTcOpu+FTMNUItmWFkQvuYDbxzgjmvS1M3l4dGYKPJ+eBSwOM9+p55PTFcZ4LSOK+Mw8yIJGW8yRBhx/dIzyOK7CSEwuiSIqyBEaQuS6k4+UL6Z6c+nfgHkq6szb1HXEVuFT/QIgkqbxGpLFlAye+B+B7/AFq29taxTxqtrbQSecAY5UBBjJ47n0boeKbNpV5ZMk01tKqysQFIX97k52EjpwD19KVJYvL8yCbkOz+WQTtVcjB5yAMdRwM8Vmo8u6E5uS0eg+MWzsYpbVpEkLKvlRgK3AIwQR0Abv1z7Vi6mqxPHsgWDzM/Ix3NwzAZ9+PetLexjUyspIiV12sWIUdShGMdCP8A9VYmrORcblXarBpI2MuSwLEg/rVK19gXNtcvaPaf6LcXDwxSyAho42BVip9CD36c9+9a8hijZoYrIwCMKDkKVXnOSM5I25B/pVW5i8qG0UQJKFtondmfGxVOSQMc59fak3gxr5L+XvDsAzFCFPqw+9/Dx705JKWxN3JbllYYZbiVdltPI0nyIkYVVXAJ7e47nn86qwLF5rKbO3WNVMoifgbecYIOM/4e9TPPH5BluHYliswjCEbhgDAyOnJHJ9KdbaPe6m7y2kTMqMBtVwETBDAIfoc8dD6ZqXHmdkh83KtXZGZfzXcOntLCXGzCkBUBG4c9O2DwfavNrq9W5xvtxGMli+PnOT1wOOK9JvYvldJoUYNvA3Jt2Pggg4HOAD6c15peu/msEhYEsS4wSAR0we3U8VrSWhcX7xn3TfvfkUAA5x3+vtUbOvlqSQ+484HXippN2Cjo+W+7leo69aZHIjxuskbKowQCO/SujoajF5JXaU5+UAYyKt2JmN2incoZgCVUHGfrUIQ+ZllYKwyNq5rT0+Qf2hB5rwxKwJaRlBzz/EP8Pah7GU7LQ9HsbOOHSLeOO2iJlXYCxDMzc5BGcc4z+BHcVeeKBLMSLbQWu5EMO5FYHsc9ecle4479aX+yL9NPhvPKmjRwpVkZcjKgKMDkDnH09M05PLljcwZikaRUEMa7gm0gnHHTk5xjt3ri5bPVEc11o9CRmjWYZtllhL7cQxqEJIIC8nJ+bng/yNZetRx24Ty7dbZWLLtY7m2gAj6dauLIZlO6RCzxuVQFnxk5IA/gI4/OsnWJVd45oYwIJCdjM+WbAHU/h06U1a+w1fvoWNL07fZzXtxb+aFfCAMA2OhIB/8ArH0rVeCwjQRR25woUAzRMQCT3J4+7+tV4/3ej6fxMzFFYtE2Nq78kk5BPr+Bpyu8odoyZXdHLHdl3XPDPuHAxxn3oainsLmk1uPaytJJ5BLZ28jrJhVg67e569vl9Ovesu5sLSS2k22LbYl343kFVPIJBPP/ANY1qieIwm4+0xxgyg7IzztYKMAg5PXsO3as/ULK6utOu3tIHkEShSipkxrknax5ydpB7/1pct2rIfM0tWef6ojweWWtLWIklT5CHLnnuehH4CsOaOJgSPmGc8dT6VpNbJFG0lw8hZVJG1j83pk57cVmzNErKBsw3dRyPw/H1rriVTehB5X3iqjPGff8KQLyobbtOQx3f0pxGBjJCE8kv6UiqrR5U9DgtvznrVmvoR7E8xki2rjp6Gp0YKSF2kHq5TqabJHjBdcDOVLA81LFFuKyOdqDG5mb8x+VJsiVkjsvDNpBcWu+WJm53HGQSnUkAc5H9RXcCws4po1is4VkaXayzk52evXvz2PTFcx4fgeD7L5cJa3lBVgowXGeQD2OPTFdQ8iGFJzNDNlmbZIedoBG0knggeo71ySjrqjLmbWjHx2+nyFoZoAobcAYI25II6Njnjn6msO/WOKZPLtxCHAfD8s3J7AcVtGRo5EMreW0YTaxYB0UcEqFHIPTP+z7Vz+pyO14cLIDj5WZgSQSeee3P60la+w05bNlZIHeRYeEd2UKehweB+HNdt8Mrb7L42urfkmC3lXd2P7xQD7VjXcIXxVZwAYysOQAOwP+Fdr4I0w2vi3U7tuk8eY8HtkZz+NddGP7xepyYqp+5a8hnjXSo0mS8gXaZH2TBRySw++OwbjGfeuRgO5WMzo02MGXPJ5BKrgY3cEYz3Fena1aRX8MtrNkLIo5Azg9QfwNcBdaLqlrOwjjkXblt8Ue5JCePlGDjjjnHXvjNTiqbU+aJGDqp01GT1KdtC15dsCZC08ojy6g5JI645UgEdemK9KEUUcIi2L5SrsCEcbcYx+Vc34d0B7S4F3dRspQEQI7fNgj7zD16+/JPU103zf7P51rh6bjG7MsVUU5JLoebzQeRqFxCrSFIw6OqMckBhjOeOmePeluf3ayiS4R5FVWMYj4JyQNxz64549aueKdPmt9WeaPcy3HMYDkZYjDLx0459/wrOBmnkEVsu0NtCRqoG5eoABGTg8nPFcUlaTjY9CEuaKlc2fDfhu3vbN7m+EhjJKJGCVzjqWPB69B25qhrukjSNSAQtJbyKWUsCeOjbsdSOOeOMD1ruNNsVsNMt7XIZo0AZl4BbqT+eazPFOnveaas0Cl3t2LFQAzFSOdue/Q/hXVOilS0WpxQxDdbV6M5nb5jyMs6yqrqH2JtfgLjnPqenHTI4FXfDEPna8zSku0ZkkO5ySDu2rnseD1HpWNJJK6sCoklLAq0ZIy+ByGA9BznvXUeDdPaK3lvDIXSQCOInJ3KOS3PqT+lYUlzVEdVd8tN36mn4hsxd6LMSAXhHmpwTyOv1yMjFcLGHjuHVJHVZQD8wVVPOQWHVUBB69M4r00gkENgg9ciuI1Pw9cWV55lmZGjzmKRF3lcnlWHXAHTjHA6YrfEU27SRzYWoknBsyHx9oPksFjJJaJcNvA5BwQMjLY464NV9c002+tafb4LPPDGzZBIBLZwM9AOmK39I8OzXMyfbUdIEwHaTq6g5VV7jqQTgd+vbV1uxgn1uC7kB3wR4QA8H8PbmsqdJtXZvKtFT5URajYRyaG17GoE9vJu8wKMlc4PXg4zkZrmICI5CWlBK7k3SZbyuCF6D0b8cEV6BpyLLprxTIGRyysuMggjpXLah4ZvoJwLVJZYv4ZYiAVA+6pX2655yauvTbtKKM6FVK8JMyArPcu6LLvjXYEcqxUngAr1x/8V2r0ixtE0/T4LWP7sKBc+p7n881zeg+G5Y7lLq+iaMIQ6xyNly/cnBPGefy6AAV1eG9q0w9NxV2ZYqqptRi9jz/VbbyvFEscavgSMdqBlYq0e7GenXt7VAzRxgLJOzK0BdY0QMEAIIDHHTBxzjpjitjxjpzGZb5BlSoVzgkK4Pyn2z0J9q52MyuViiiZMrsRF/5aYI3KvXkkZzx/OuWcXGbVjspSUqadza8L6DFqHm3V9GDErbRGjfK79SeOwyB15/CovE2hw6XPDPaJmKQ8I5LBWA6fQj1PHPfFdbo1gbDSooZsNLy8h4+8eT0/L8Kj13Tv7R0mSOHJmjIkj78jtzxyCR+NdPsV7K1tTkWIftr30OMUI0Mixzs6rGg8towrMOcbc49Rjr6Vb0O1E3iZRMGYLI0m2TcSQqjAJ6EA447VlsZxFJEVMvyhMMPuMPuAnggrnkn2ro/B2nyB5L58rGV2R8n5mJyxwewI69+a5qa5ppWOqrLkpt3Oh1W0N9pVxbkBiyHauONw5H6ivOiAZg2Zys0ZPyYViMc/LgkAYB7n616hg/3v0rj9d8OzJcyXWmq0isTIEiIDpJ2IB4K9fzxjFdOIpuVpI5MLVUbxk7GBKd04CyBQ7bnMXyiQY5xuHPKj/vrFV/EOmvbtphKkzXkW9gBwpZuAB24xn3roNM8N3c9wReCRIAfmllILSKeqhe3POfetjXbG2nvbSSWPJt1zHgkY9sf56VlTotptnTOvFTUYlXUNOjPh/wC1xKvn2zg+YFGSo4P1wDkZrmYSEkbdLkoWXc+WEYIIXlRgcN+YIr0HTlWTTWjmUMrllZcZBB6iuV1Dwzfwz4tRNJF/DLERkAfdUr7HnPOT9cVVam3aSM6FVK8JMyNjSXLuiSh412LG+1iCeACvof8A2btXpFjapp+nwWy8CFAp9z3/AFrm9B8OSxXMd1exNGFO9I5Wy5fuTgnAz2/kABXV/N7Vph6birsyxVVTajF6I8v8ViGw8QOGtpZ1E+RHCrByrpnAPPc9PavOdTU2t3K9wiolwC0UXDFFHI3AHI9OcV674+0yaSaK+hj3gKFY9lcH5cnsDnGfavLdZ0i428LIAhxG5P3+fmC45PP06Vlblm0ehQkp00zlAvmu/mKQCMhQCAT7YqwqRxzxoe4GSBnHtVp7Vo7USSRkEthyV6H39Kn03TpLzIgHmFWGyNR85btj1rdr3R83vXOz8MRSeXMGnkIESZjaFkaRecY3cdx9e9ddoNp5/iYCXcdsjSYk3ZwqjA3dCM9u1c1pEE8OmNFIryuQE+Z9yqw+4OeVI7/UV2vg3T5A0l64KoV2IefmJOWPPXpjPeuSC5qi0M68uWm3c6DVbM3+lXNuQGLodqkdWHI/UCvOxgzhh522dCcLtBIxz8uMgDg/h0r1DB/vfpXIa74dmW6kutOVpAxL7YiA6SeuDwR1/PHSujEU3LVHFhaqi3Fu1znpeZwI5VUSvl/L+USDHONw55Vf++sVX8QabJE2mEqTLeRb2CjhdzcADtwRn3+tdDpnhu7nuCL3ekAPzPLgl1PJUL255zx+NbGu2NvPfWkskeTbrmPBIx7Y71jTotxbZ0zrxU1FO5FJpiXmg3AVVM9uN8L7ckFRnH0OOlcpE5FwzCUlUYSDdmQRj6DHO4t06V32kHEEu4fx9h7Vgar4XufOzYo0kDN91XCvEvXaORkZ/H8q0rUm0pIyoVVFuMmYG1FuQCjr5KByRJ82MHkA+uScdsdK9C0e1+xaPbxMoV9m5wBj5jyePqa57RfDE63EdxqSbQpDGOR97yOD944yAOB+XbnPXfN6j9arD03H3mZ4qqpWjFnA+MbENq0hjj5lWOU/LjLZ2n5u2cduea8p1YQQySQvHcLMCV2iYYU444A68fSvbPGmmPdWYu418wRIVlCrlgvUED2P868L1VIUYpcsztkufLIwSfcnP6DFQ42mzsw0uaCd9jPKPMpCuAoXOCw5b/PaqjITKrICQwxjjr/+urDDzseXhmBJbHUVG0P3GZsHGMAH+dbKOhu5NPUk2oGCISjbepPf/CtTw5YzXWvW8Tp8rSAHcCe2cZHTpWOkhSZg/wAykcAnO0f5712PgPS559QF2oYxxsVJTjn1z9PSpS1sZ1ZWg2e5WNslzoEdpctvRofKkGPbBrgpIWt7uPzldpgTAVDBCxGRgD0yT3/pXoOmIyWSAq0fHTOf1rG1/wAOm7ma5tV8wtgywg7SxHQg8c8Dj269cmIpuSuuh5+GqqEmpbM5Wcg7f3hXAEaOoZNxHBBJ/wBksM1F4isjHo1helWeS4lkBzjlQAF6cevP+Fbmn+GL6WbNyJYFOC0srgvn+IADOc+/HftW5rlhavbWdu0KmGE5jTHTGMVhToyabZ1TrxUkk7mYmjrL4WZsZuLWJSDk/MqjLKQOo61gRg/aAszIyg/u1k2qFHoeDgZJHPZRXeaTg28yvjDNgj2xXK6loF3ZXJS0jYxMcJLHHuGzrhhz82e/p9TVVqeikkZ0Kq5nGTMo8zKZJHaOCPaXdAyqB7DkqeoPt7V26xDS/Cih0+bYGcdTub/D+QrD0TQri7vI7m+ikWLiR967C7f3AOu3ge2OOetdRqxjaxdLh/LDd8+lXh6bV5MjFVE2opnzrrU08t7JCSxBkYny++eTx0AzWM0SvLtI6A8twVA//VXV+MJEXV5YbYmMk5yjdV5I9+c1yUb+ZcEMCOz4PJP496p6NndSd4LQQwg7CHypOPm6/wAqEjVU2opIIz19KfJsZGUKyMr5+v4flTmTHRzlRkjoQPbjmny6GvOrkMwkSSP5WYbR0Bq7YIrTxCSN5x5mSiDcfxH41B5qBcqCXA42sePT9Kv6FBdz3Zkt/MA6k4yD6jP1NJaszqSXLuemaBaP/Y8qxQsY1XzYkPykYGcceoyPxqRMpcOqSMEnTCsECqwPrnouQeTjr9K2vBMV2szrJIqqAu9CME4GOlR6toVzp920tqGaL/lkyrvzk4KMMZwOPbgdOcxiKbdpI48PVSbgzJlJW4YRMvkklpEUCT5RyOMA45AwPequraa8XiCxtXXLzxRMQcsF3HO3PoBxXQ6RoNxeXCG9QiGMgO8q7cgfdC+/OCelamsWEM3iFL5t3mRRhQARg/8A6sms6dJ2uzSVaMZ8qM6TSw/iCPUWIxHDsx33c/pg11fhUf8AE0lJ/wCeJ/8AQhWH7n8hW74UH/Exl/65f1FdtJJSRw4iTdN3NG7z9pP0FQg8dMVPef6/6gVASAeTWstzkh8KAnHr+FNPPUMfalDA9P5UE47Z+lIsjmhiuITDcQrJG3VGAIqG006ysWLWlokLEY3KnOPTNW+tISB6/lU2W47u1g3L60bl7Mv50m70I/GlFUIoS6NpU0xkls4GYtvPHBPqR0Jq8CBgLwoGAAOKdSZb0/WkklsNtvcMk9BRz2UfnR83tR83tQIUZ74H0rF1Y/6b77BitnJ9B+dY2q/8fv8AwAVMtjSn8Rc0nP2Q85+c1dGfTiqWkf8AHmcf3zV0nH/6qa2JluKfamkZ6gn8aXdnsfyo57DP41RImMrgplcYwcYqC3sbS1cvbWkULN1McYBP5VZ6jmkJx2P4ClZDuwLDvn8RSbl9aN/4fUUoPv8ArTEVZ7Cwu5fMubWCZx/E8YYmrPAAABAHQBadSc+350rJbDu2GT2X8+KMv7D8aPm9vyo+b1H5UxCjPcg/SsjWDi4T/drW59qyNX4uEPfZ/WplsaU/iLWk5+x9c/MaujJ6jH41S0n/AI8j/vn+lXScf/qprYmW4pOB0zTTz1BP40ueeh/KjnsM0yRCMrtK5GOQcYrJv/Dtjd2zRQ20dsWILNFGoJ9uK1+o/wAaCcdiaVkxptbHFX3gwXdqIZIgybtzKx5yD7VNpfguzts+cgRd4cDgk4HQmuuLfh9RSg++aCueVipNp2nXLq89nBKygAFogTx+FWlIwAoIA4AC06k59qLJE3b3DJ/u/nxRl/YfjRz7Cj5vUflTEKN3cg/SsfVzi4T12f1rX+b2rI1f/j5Qn+5/WplsaU/iJtH/ANTLjn5+fyrR59OKz9G/1Ev+/wD0rRJx7/ShbCn8QHgU089V/Wlz7Gl57YqiCtfK72EyxgAlDjnivn3xHtkupt1vIsity+zCL7ZA5z1r6JkXzImU8bhivH/iLaWuniO0j2tcOpZvmG4DHpjpUS2OrDStKx5xMsuS8KhVYhjtH3foKiLMucqznkY54H0p7uiQxhEZeeWz1pXlCrjdu3LxuUg1CPQcraENpLHIoCLiPcN+7nB+uK9G8KfbLeYNE7FJlUP8vcDABritPWOSNY02hQNxVjjHucV6N4PjS3tZJ2UBT95cnA9xVI5sQz0+xjkitEV+SRnnjGas/N3Kj8KqadL59jG6uCCO3OKt4I6N+YrQ84Bnuc/hWZrJx5P4/wBK08N/s/lWZrB/1Bb3/pUy2Lh8Q7R8iGXnPz8/lWj+FZ+jf6iX/fH8q0CQOpxQtgn8TF6f/WrC8S3gt4I43t3kEpI3dNprc3Dpms7XpIk0icThirKR8o5FMlbnh/iGW0/tCZbpGlKAEHcdh7cgVykgjSZZbZMr6Rgjr9a2dX2Qu+55WXcQFUdec/NxWSDGXkTeSG5AUdDWbPXpX5V2KjRs7NtGcn+LqPyqeNpIgsmPuj5m8wgj3qMGTzAF6+y5p+1w7BFD/L8xHp780FuSa3HwRq7PJHmU9WwxFaujxlZY2xLGFckFPuH0HX9KxrSbPMShCuMsCSPyrp9DeWC8S6SF5Ek42vwuc9RQrGdRySuj2Twlbr5H2l1Yy7FGSevHPH5V0f8AwAfpXP8AheJnhkuQ/Dt90npwK6Hn0H51oeVLcB7gD6Vh6n/x/PjrgAflW5z6frWHqX/H/J68D6cUpbF09ypkLyx/Gtvwm2dTnx/zy/qKwXfaPatvwa27Urn/AK5D+dKn8aLrr90zXvSBMMntUANS3xxcDgfd61WyT3rSXxM5aa91ElGahLEfxD8RShj/AHgR7CpNLEtIDUZcDqQPqaA+ejZoCxLTSF/ix/KmZPrgfSgdf8aAsP2jsT+BNLj0Y/nUZf1B/Kjd7N+RoCxJz/e/SkyR2B+lM3n0/Pij/eNAWJM+x/KsTWD/AKdwcfIO1a+B2AH6Vhay+LzA67BUy2NKS940NGcfY2Bb/lof5CtLOR7VkaE3+gtg/wDLQ/0rTz7/AIU1sTNe8ySjNQk4/iP5ZpQ3fdkfSmTYlpMg1GXAPJFIJF/vD86AsTUh298fjUec98UDA5oCw/apHSjaOxI/Gmb/AGNJlf7v6UBYlx7/AJ0c+x/So93oMUdfvHPt2oCw/d7fqKx9aJ+0x9vkrV+X0H5Via2wW4QKBnZ2qZbGlNe8XtGcfYWy3PmH+laQOelZOht/oDYPSQ/yFaWeev4U09CZr3mSZoqInHQn8s0Ak/xZ/CmTYk4o+lRl1HUikEi/3h+NAWJaQ7e+Pxphb/awKBgf/XoCw/avp+tLtA6Ej8ajLe1Jlf7v6UBYlwf7xpOR6H9Kj3ccDH1pev3jn+VAWH7vb9RWPrR/0pO3yflzWqcHsPyrE1tgtwgUDOz+tTLY0pr3i3obDyZsnneP5VqZBrG0Bv8ARpsH/loP5Vq596cdhVF7zJcijNQ59zQD7t+IpkWJScV5x4+0yJlmu77dIHYCGJRyT7n0+n616FvFcV46hF0UAOHRcoSCOfbpSexpTupHjV0kcEssbRSKAflQ53A/UdqqspmlZ5y3TK5PQVevklfVClwpiAUdSflUdTgEgVTiTfN3KcgSnn6CpPR3LWnuYJt0AL7sHaMFcDrgkV634YtI75EubJleFsKY/Tuf515BpkrDUYiihWJ2qykjB9zXt2hW66dYwXinzNyjzAAAOmP6U0c1c6y1tIrSHZBlVznGc1Pz2IP1qCOTzI1ZV27hnntTvqc1Rx2JN/OOP++qy9aP+o5xwenbpWju4x2rI119vk4Azz/SlLYumveLGhnME3OfnH8q1PpWJoJBgnyAT5g6/StfPuMfSiOwVF7zJM1la4iyWojLAM3QGtAsR/EuPeqt9Cs9uzMAxRSV2nqcUyEjxzxjZwadGysweR2GVGM/jXCnylmJdWLYxwmM12virTXlvbiaQFy0mSoOQpHc1xQjJbe44UcDb1x2FQz0KVuUihY+Z+7bbg9Sae8v7tskA98Mcn34pTtjzJEoGRghkz+OabBF5sfnZUMp4AAJ/Kg1uTQsFg8vc2WPG07c8/nXZ+F4JPtTM6KVUhQ3UsPSuUsbeRpXkIXlDgsDuyBkV2Xhm3KR28NorBppAzOOFQ9Oc80Iyq6npnh/U7dB9iUeWwJJ3DAroQx7jPuOa4iz8z+0ltJrfc7YG7OPxHtxXZoNqBc8AYAFXc4JLXQlz7H8q5/Uz/xMJcEcY6/StzgdOK53VJP9OmA65/pUy2NKS94pSP8AjW/4HbdqN37Rj+dcxLJjvXSeATuvb0+iKP1NKn8aNcQrUWbGpNtuhk4+UYFVPMHr+tWdXbFwmP7v9aob/rVz+JnNSjeCZN5o9f0o8z0BqLfTfM9P0FRc15SfefTH4ijcDUG7nJyfwNHmD3/Ki4cpPuH/AOomk3f7RFQiRfUCl3A88UXDlJtx/vfpRuPqPyqHd7ikMg9R+dFw5SfefajeexAqDzR6gn2o3g9VzRcOUnz/ALR/SsDW3/07j+4PxrX3eiD9KwdcfF9x/cFKT0NaUfeNLQXAsny3/LQ8fgK1PNX1rE0Bv9Bkx/z0PX6CtTzOOlCehM4+8yfzB2z+VHmZ6fzqHfSeZ9fyp3I5SfeR6fnRv9ar7u5BNL5nsfyouHKT7l9qQsPUj8ah80DqcfUUeYvqv50XDlJs/wC2f0pdx/vH8qg8xT1Zfzo80f3hRcOUn3H1H5UF/UgfhVcSenP0FL5mf4c0XDlJt47sfzrE1yQfaI8HPyf1rU3Hsq1ia8+LiPHXZSk9DSnH3i/oUn+gvk4/eHj8BWn5g9axtAf/AECTB/5an+QrT3+1CegqkfeZP5g7ZP4UnmZ6D9ai3Uhf0z+VO5HKTbyPT86N/rUG7uQT9aUvnsaLhykwZc0Fh6kfjUHmY74+oo8xfUfiaLhyk+T/AHz+lG4/3j+VQCQd2X86XzVHcUXDlJ959R+VBc9yB+FQCX8T7CjzM/w/nii4cpNuH98/nWHrkn+kIAc/J69ea1gx/ur+dYevPi5T12f1NKT0NKcfeLnh9/8AR5snnzB0+la3mD3/ACrD8PP/AKLP/wBdB/Ktbece9EXoFSPvMm8z0DH8KPMz2/Wot9J5nsadzPlJi5Hp+dY3iaKGTSpJJTgqvBUAt+Ga0t3sTUN2BNayRsudw6Gi40rM8U1G2extDLJGs32vdsDYBjx16c81hwWD3EBmVvKXdxufC59Oea9C1vS3vLmdbpRGMBUUKf8AP/66w/7FeSMRONypznoAelI6VOxk6VYSTXkCws7sHJKpyB+dey+Gh5dsYSXxtBw3OK4nw34eMTIwKgljtPcfWu/0xTCrhuoOAAOlCM6kuZmtuxxn8xQX9Wx+FQ+Z+P4UnmHsB+dO5jyk29e7frWRrsg/c49Gzz9K0d7ew/GsjX5MeR64b+lJvQ0px94s+H3P2efJx844/CtfzB6/rWD4eb/Rp+58wfyrX8wDHb6URegqkfeZN5g9aDJ8vAJ/Cot9NMgCkAgfhTuRynlvjPUVXVtkMHlkt88rKNo/WvPp42Msi3Kx4UZBBIX88V3HjS4Ny8kcBWF8sJGIwAe1cNeRssKLM6SOF+YhycZ6UHVC1tijuC7SqK5zyRnipY9zZ525XOVxkU8l4YEVcsD3UA5pbYrboZPn2lvmyp4OfypGqV0XYNzXI8uVGcKAMkgk5A5JrsvDMyWqSh7i43tyUmX5Rz0Xj9fauItxGqna7rI54wnT0712Ph+289lFz5+6PGZGXCvz0B70EVInqOgXZntWUxbQnAYn71a24+1Y+liO0hSFpVMjjIUdq0SwPVSfwp3OPlJ8n+9+lc1qsn/Ewmx/e/Ot7I/ufnXMao+NQnx/eNTJ6G1GOpTlfrXVfDw5ur//AHE/ma412rsvhuMvqDf7g/nTo/Gi8WrUGautvi8Qf7H9azd9XdfbF6g/2P61l76qp8bMKEf3aJvMHr+tHmcVA0uOpxSiTI4OazNuUm8zP/1xRvxzUG/3pd59f0oDlJvNB75o3D0FQFz7H8aN3qtAcpPkeg/KjfjoPyqvuHqw/Ojd/tN+IoDlLHmH0o3n0/Wq/mf7Qo830wfoaA5SxvPp+tc/rj/6d6fIK2fN9Q35Vga2+b7/AIAMUnsaU4+8aOgP/oUnX/Wf0Fau+sTQXxZyem/+grV3+lC2FOPvMl80etLvyKgaXHU4/GgSccHIpkcpP5nsaN9QeZ/tY/KjefXP4UXDlJvOA74oEmT1BFQ7z6ikLeq5/Ki4cpY3UeYR0/nVfd/sn9aN3+/+tAcpY3k9vzNJvb2qDfj+L8xR5h9R+tAcpY3t6D86wtdf/SUJ4+T1961RIf7pFYeuvm6j/wByk9jSnH3jQ0B8WMg5/wBYf5CtTfWLoL4spP8Arp1/AVqb6aegpx95kvmj1pfMqs8wTljgeuaVZQVyrZHrQRyljf7Ub6g8z/ax+VG8/wB79KLhyk3mgUm/J/hxUW89iP5UFvVaLhyk+6jeR0/nVfcP7p/Wjd/vCgOUseYfT9aTe3tUG/8A2j+Io8w+ufwoDlLG8+g/OsHXXxcpn+5/U1reYe4NYeuPm6TjHyd/qaTNKcfeLvh5/wDRZv8AroOfwrX3Vh+H2xbTf9dBzn2rV3mhbCnH3ibzB70u/wCtV3lCLljx65oWVWHytkfWmRyljf6g/wA6N3cVX8wf3v1pd3oxoHylK6sFmmJ3NErHc+0fe/Oqv9ij7olyhPIJ5xWvuPrTcnJPBPrRcLFXT7A2d0WAGwLgdq0t3oKr7/8AYz9DSg+zD8aA5SfefQfnRub1H5VBv92H1FG8+uf+A0C5Sfe3tWPrz48knjAbv9K0fMPdT+dY+vOS0HGOD/Sk9i4R94teHnxbz5/56D+Va+/3rC8Pvi3n95B/KtbzKa2CcfeZP5nvQZODg1WaUJwxApfMBXg5HrQRynEeJ1jb7Wi2cc0kikkucfz6V5kYJLa5ZfMXc4wVDZ2H6ivTfE/2WNJbpLqd1jGGhgUHdk454zgV5xctb/alZWkTeuAZDjH/ANf60zWKtEoNFOz+SwO9TyfSpYo3azZZH3gMScdBRiUtK53OFbqW60SN9mhkeKLiQ85JIplPdJFm0tswCcSmNQQB8mf613WkhtQZPJSW3jQAEyJjccdsHpXHCaIafDIYS8uc7CSoJ/rXa6PJeXcMQeDyvly4AGVHNIiZ0ek6paRXi28gPmj7rscfhXS7z6frXL6bpFtcSJeysWdD8o6Dj1rofN/H6UjPlJw59P1FctqT/wCnTe7mui836/lXLX75vpz/ALZ/nSka0o6ldjk13Hw3+7qH1T+tcL9a7z4bj9zfn/aQfoauj8aIx38BljxHxfRnOP3fP51k59zXLfFD4iT6N4qOkWFlvmhhUmRwzbt3PCgc/nXEp4j8d6qf9FsbwKenl2nlj83p1PjZeFoSdGLdkeuSoJomjYkBhjIPIridQ8R6h4S1MR6vC02nSNiG8UEqf9lvQ1zv9mfEW65ZriMejXUK/wBaWTwx45nhMc++ZGGGR72Mhh7ioOuNGK3kj0jTde0/VIFltJ4mDe4rSDZ6HNeJt4H8UWj+Zb6TOjjq1tdJk/k1Srq3jXRRtkt9RVF/572bSD/vpaQ5YZfYkmez7vemmUA8soryi2+KF9EAl7bxyt3G7YfyatO38d6HecajazWxbq2CR+YJpq3Uxlh6sVex6GbiPP8ArFB+tOD56HP4155cWPhbUFNzbeJLmx75S6XaPwNc/d6qmmSY0nxwbor/AMs3ti+fxGa66eGVX4Ja+j/4JxTqun8aPZN5Pejccda8csviTrduxW6NvcqDxjKEitlPiriMbtLd377WBFazy3FQ15fxIji6Mup6Tn3H5Vg6yf8AT+TxsFco/wAVjGu5tHkUerOBVrT/ABR/wkc3nfZXtwUBXd0b3B7iuWrhqtKPNNWR00atOcrRZ1uiH/RJMnHz/wBK0s/U15jqvj650O+l0ywtVkmXDF2DNkkdlHWs9fEPjzVSfstjeKpPG208sfm9YI6vYN6tpHrc8azQtG7EBhjIPIrib3xLf+E9UEGtwGSxkbEN6o3K3s3o1c9/ZfxEueWa4jHo11Cv8jSy+F/HE8JjuN80bD5ke9jIP4UFRoxvZyR6Vp+u2GpwrLaTxsre4rQDZ6dK8TbwR4os38230mdHH8Vtcpn8g3NSrrPjTRRtlttQVV6mezZx/wB9LQOWGX2Jpns273pDIo6sK8otvijexgJeW0crdwH2N+TCtSDx1oV5xqNtPbFurYOPzBIppLqZSw9VK9j0Lz0BxvUH3NOD56EH6V53caf4WvlNzbeJbmy75W6XaPwNc/dav/ZkmNJ8btd4/wCWb2pfP/AhmuunhVV/hy/B/wDBOGdV0/jj+KPZd3pRk+uPwrx2y+JWtW523f2e5APGMoSK2V+Kn7sZ0p3fvtIIrWeW4qG8fxREcXRl1PSN3q36Via2f9KTn+D0965B/iuYly+kOo93A/pV6w8Uf8JG4lNs9uAgxu/iHXIPce9ctXDVaUbzVjoo1ac5Wizq9EJ+ySZyPn/pWju968t1bxN4ktdTl03QrCd1GD5kVq0m4kD+L7uKqiy8fX4zcPLCp7TXccWPwHNYI6/Y31ckj1ibypYnjlYFWGCN2K4XU9W1bwfqBklX7dpDH5Z0G5ovZx/X/wDVWD/whvie4OZtVt19Qb9z/IVKvw/8QEfLqVqxIwR9qkOf0plRp009ZI7vSPGGk6vGPs9zEH/iQ4BH4da21lVxlGDD2NeQz/DTXiQyRWMjL0KXBUj6HFIdD8d6SmbeC82L/wA8bhJv0JzSHKhT+xNHsBbHOcVC19bocPOin3NeRr458S6WdmowSDHUXdu0Wfx6Vp2vxEs7hf8AiZaWrA9Wiw/8uaat1M3hqlvdVz0YapZs2FuYifQMKmS4jf7kin6GvM7q8+Hl9G1zdb7WTuYzIjfl/wDWrnbvV9Agb/in9d1mJh0EhUr/AOPYNdlLDRraU27+hw1Kk6XxxPcQ2R7UuT6/pXh9h408RQNiO9N2OwaEnI/4DW8nxD8QGMBdDeQ92MTgfyrWplleHb70ZxxdKXf7j1HcO7D8qw9b5u05/g/qa4Wf4m65arun0uGIf7RIrU0nxJc+ICsl5AkLGMEKrZyOv4dehxXLWw1SlG8rfejpo1Izlpf7mdfoh/0aX/f/AKVp5968x1rxN4g0/UDp2h2E0gZVcyx2zSkk9sjgdKoi28f6gN05mgU9prmOL9BzXOtjq9jfVtI9ZcxOhSQhlYYILVw+sX+r+Er77TAv2/SCckx/NJB65Hce/wDKuePg/wAU3P8Ar9Vt19jfuf5CpU8AeICMrqdqT/19yH+lBUadNPWa/E7fRvGmlawg8q6RJccoxwR+FbyTJKuUcMPY15FP8NNdbBEdjKy9Cs5B/VaT/hHvHOlR5tYLoqv/ADwuUl/8dJzQOVCn9iaPYC2OSeKhe9gRsNOin3NeRjxr4o0k7NRgmXHB+12zpn/gXStK0+I1tcKP7R0xXB6tEQ/+Bpq3UzeGqfZVz0YanZlsC5jz7MKnS5ik+5Ip+hrzW4vvh9qSNcXqPbOOpUvG35f/AFq5291Xw1AcaBretROOm5gy/k20110sPCtpBu/p/kcNWc6XxxPb92RxRurw6x8ZeILeQiHUGu1B+UPDnI99tb8XxD8QCIAaI8rd38lwP5VvUyyvDt96/Uyji6Uu/wBx6jvHd6yNdOXh5zw3P5VwU3xM123XM2lxRDvvJFX9I8V3XiPynu4I4cqSoRs5H06j8a5KuGqUo80rfejppVYzlZX+5nZ6Gf8AR5ucfOO3tWpn/aryW98Za9BqV1p+iWMreXJt3JavIx46+gpqp8QtQXLpcwqf+es0UP6ZzXOdjo3d20j1W6ijurdoZXZQ3RgcEVw1x4m1PwrqRttfiM1lI2ILyPJVx6H0P+eaw/8AhFPGdwcy36rnqDqB/oKe/gbxTJGUa6hlVh8yPfMwP6UFRpU1vJG2L7S7qZ7yxnDxSD54yw28/wBa4jV42eZnVVV92fLj+Yde2atXfgbXLTdJJZQ4HJaO4H/1qxL+PVrKdJPs0249TkPn8utNGUqcYP3ZJkgQzRhMqrOchVJ/wppi8tArurf3l3E457VUOq3sTkE7gDk5+XH50+11C3lidJ4MNnl9v+FMTTSujdt4JbmONoPLLxsMCThce2M13+l3kx2sqgFRhgOhxXmAGiRpG5knjfu0LnA+oNWjqcNr/wAgfXr0kDlZIwRn6nFbU6XtHaLOWpNwV5o9o02W5khZrldvPyirm5uxFeM6f49162wvmR3Sj+EqQfzFbI+JmqFQE0GaQ9yFfH/oNdEstxEdbL70YxxVJ/8ADHp25vYVy10c3k3f5z/OuUn+KuoWozPo3lAc/OWX+a1p6TrEuqJJLcw+S5+fZnPB/wA/Wuath6lFXn+aOqjVhNu35GkzBfvHFdp8NJ5Tc6hBIoVQFYeuelcIA1xd2rRxMNsjFnIyAoA4xXofw8sGja9vfLMccpCJubcXxjnNcGHrOeIjGO2pljZL2TRy3xHtPGeoeKFh0U2djp6wrsumI3uf4gcgkYPoK5UeBNeuDi88XTGTqRGzH+or1vxTGJbiLfzFHHvmUNhmXPauWvNLt0mjMYa3MQLb/NGXQ9B6Zror5wsPV9korTrZHLh6UZU1dv7zi5fAuoWi7m8XyoR3kLD/ANmrEvX1XSWK23jKzuHH/LPzSW/Laa9ETRNM1JoH1aMhWQnzmXIbnjjtUmh6faWcl1Fbw27LDKVSZIlVmHucV0YfN4VZOLV7eSNXh9bRdvmzz3Ttd8dXSf6Hbz3GP4jb7VPvlsCrq3nxLkOBpzoPcRj/ANnr01mA5ZsfWkSRJM+WwbHXB6V0SxsG9KURrDytrNnmM2g+PtXXbfJZoh6+f5Tf0NUT8KdRtg11e65aWcY5YRozD8BgD8q9eqvdpG0RMqCTHRSKwq433XeMUvQ1p03B3U3954XPYxS3jWumQXmpBTgubTG4+wGePripI/AuuXgzF4cmUHo0jpH/ADOa9muI76yixby2xMbD9xEMBlIznipY7u5mZY4rdPNL7NhkGTxnI9RXmwxtLeMj0Xi3KNrJ+up5Fb+AfFdtjydPaMf7F4uRVtPBPjOU4cyIPR9Rx/KvVILi4W/lsr+AwTxjcADwy+tWmYKPmIA9zXSqrmuZO5mq7tpFfcjyyD4XazMc397Zp65keY/rgVt2fhmHw9IEEpmmKAvJjaDxgYGTjgCu4ABGR09jXO+IWZLolCFGwEk+lRUqKEW5MHWlPRnPXFp4v1PUJoNEkt7CzTaTcPtDtlQfQnp6Cj/hBNcnIF54wlLntGzf4iut0O1klhuFUnczBnMjYMm0YI9unT6VNd6XaSpH5UYgUnzY5PN+YLx8p9PxrJZ17FRjyrbV2X6nBKlGUrybfzOKl8DahaKS3jCSMj/nozf/ABVYl7Nq2lMVtvGNncuP4PMJY/8Ajpr0CPRdN1FopNQtmlh8xv35Xd8vQZH17+1WNJ06y07U7y3sI4TChBRxEFYZ7Hiu+hnEKsuRxv8AJGTw+totr5s8+0/XPHV1H/odrPcf7RtwoP4sQKuLefEyQ4/s9kH0jH/s1emswAy7Y9yaak0UjFUdWK9QD0roljYN6Uo/cUsPLrNnmUvh/wAe6uu2/SyRD2uBE2P/AB01Qb4VahaBrq/121s4xywjjLj6AYA/KvX6guYopIyZY/NwOFxnP4VjUxjcXeMUvQ2p03CV+d/eeEzWMc941tplveaiqcFzaY3fQDP64qaPwJrl5zF4cmT0aR0j/ma9mniu4Lci2urcOArxwxLwwPbjvQl/cv8AuzDGJ8rhTJnfn0/X8q8yGOpatSseg8W5RtZP11PJ7fwF4ttv9TYNGP8AYvE4q0ngnxnKcSF0H/TTUcfyr1QTXdvqf2LUYBG7JvjZTkMKtM6oMswA9zXSqrmuZMzWIdtIr7keWQ/C3WJzm/vbNM9fneY/rgVvW3hqLw+yqJTNM6AyPjaCcAcDPHAFdqNjDK4I9QawfEJKSgp8uI8k/j0+tTOpyxvIHVlPc5258OeINevJvJ1w2GmjbtiiJDNxyTjGeh70L8L7JsC61y6kfrwR/Umuo0K2aSzlJJZQFeUM20uoGSB6cGrF3plsWiMSC325lSQS/MUPRT2z9axjnk6UVFaeiRwSo05SvLU4e78CaDYf6zxBcwt77T/LFYNzYRRSFNF8QajcyDgLBbSt+oOK9QtbWC7MD3vmeUS37/aDuXOF4xxU2mkxXV3axz+fBC+I3IweR0Nehh86dSTi9fVL/IzlhYN2jp9/+Z5rpuleP7mPFu9zCvZ7uVUz+YJq8nhj4iSH97q1ug/6+f8ABK9MYhRljgeppqTRyEiN1Yjrg9K6JY+TekIr5DWFS3k/vPOj4C8V3Yxf+JFVT1CSSN/QVTuPhRZ2MbXeoa3c5Xki3iG5/wAya9UqObaqF2TeRyBjOTWNTHVHF3sl6I1hRjB8yb+9niX9hahd3JTRtF1KSEcBrhlO73yQAPzNXovhn4kuhma00+3B/wCes+T/AOOg16ndrfJGxju4HlAV0iUZ3g9vrSJfXL/J5EazZUBTJ97PceteZHGUXqpHpfW6jjZf5nm6fCvXI/u3enAegaQY/SpU+FmrMf3+oWIH1kb+Yr0lZru31I2WowCKRl3xlTkMKtFggyzBR7muiM1NcyM1ianS33HnVv8ACcg/6Tqqgf8ATG3x+pNay+H7TQWSK1LSOUBeWTG5z0yccdAB+FdeNrDK4I9qwPELFJQY+MR5Jz7n/wCv+VTOahHmYnWnN++zBu9A8Q67dOllrP8AZumqF+RCQ7nucjqOPUUxPhfavxea7dSv35/xJrqNCt2ltJiSzoNry7m2sygchfTjFT3el24eIxA25TMiyeaNzIegPbP1rKOdypRUFp6JHBKjTlJuWpxN34A0KwXM2v3MJ/2itYN1p9rBIY9I8RahcSjokNtK38jivULa3gu2ga9aQREt+/2A7lzgcY4qXTGaK7vLVJ/PhhfEcmMEgjoa9HD506knF6td7f5GcsLBu0dPvPM9M0zx7cDbatdxJ2kupFjBH0IJ/Sr6eGfiLI37zVLdB/18j+iV6cSB94gD3piSxyEhHViOoBrolj5N3UI/cCwqW8n9553/AMIL4uuhi+8SIinqEldv6Cqk/wAJraBWutR12cEcsYIvmb8ya9SqOYKELsm/b0GM1jPHVHHWyXojWFCMXe7+9nib6FeXF0YtD0jVJ4l48y4Knd75wAPzq5F8NfEl2uZbKwtwe00+SPwUGvVLr7esLPHcW4bYJI4xzuB7fWhL+4MeGt0SXCkAyD588ceteXHGUZXakel9cqcvKjzaL4Va3HjbdacvsrSD+QqVfhZrDH9/qFiB9ZW/mK9INxd2upJZ6hb+SZV3RMDkMKuZ29TiuiM1NcyIWJqdLfcjze2+FDA5udVjA7+Tb/1JrYTwzZeHo4ktmeaRgd0smNzY6dOOBXXja3IwR61ja/kNCI8BirYz+FKUlCLk9hOtOfxM5RvDvirWry5aPWl07TvMxGsJIZxjvgZ/Wnj4ZhyBc+I7qR++Gb+rV1Hh+NrnT5DIzSRoQ8q7tpKEZwv6/WrF5pdukkZX/RjEC+8Sgl0J4HpkCs1nkqdoJW9Ejz5UKcpe9d/M4a78EafYD5/FM0TAdGY/0asGdLi3kKaN4quLxweI44pWJ/IMK9QtdMsbySB9QjZUZSfP8sHdk/Lxjjip9HzGbq3SQSQwylY3C43D3rvw+cqq3Fq9u6X+Rm8Kr2jp9/8Amea21t4+vrMjy7kx45+07Ez+fNUptF8SmQJeiINGcgeYvy/lXtDMqjLEAe9c9fWZudQae3ZXTodpzirqYpVJXUEvRGsaLgvibPJp9E1Eyuj3KbmG4puJz+lVX8NS2iGaeaQ7v4YVBwffJr1fVNEijja5ZBvC4B+tUNP0ovazNsMjY4BGcVzyrWjraxokk7nnVtYTTybbS1nk47gc/jxWpB4J1q8YbLK1h3nCmWcD9Bmulj0q6Vm8qdXkU8KozuFb+mWc01zAwEfnxuECM/XIzmuX61Sir3OhV5W0OMj+GfiaLhZLJR/s3kg/9lqaP4Z+IZT+/vrMfW5lf+lelwTXcOpS2N/GElQBlZDwwNWZJY0H711A/wBo1qpqS5kzRYmfS33I85tvhRMcC81SFc9fJgJP5sf6Vqafpdvpu5Y/UmSU8Etn75H1OcCu0UqQCpyD0INcn5v/ABMPJ2E7gXBP3SM459qwxMrUpEyqzmveZa02wOpX0NlbFnZ3OXKkYG48gdgK9e021isbaO2t0CRxJtUCuZ8FaO1nYfbrncZ51wNwwQufTtmush++fpXTl+G9lT55bs+fxdbnnyrZHJ+K1Z5lWKNnYQkkjooz+vQ1hTzLZLdNCXjDxqkcLJu3MwxznoOa6LxJY3d1cf6Lbyy5hwGR9u05P+NZMmh6hLD5RtpZP3qOWZ9qsBzgr39K8PG0aksVKXK7X7HXQnFUkmypGkdjasrKY5oykkaLJlfbI+maqvZr9suJlv3h85DPIVQ7Vc9sY4/lWtJo+oNYXS29tLFcSnIXaNm3PT/PehNA1J/JSSFjvT5y0jYHI+U/hxXLTp4mm7xizo9rDfmM+ys2u9PhlvmWfzkxHglNrdmPtVO8tI4JJbq3Jt3Zggjifhm6Z9CD7Vt/2LfmMR/Y5UVZPlRcbVTPT1NOudG1JoEtobZnTztzI/3AB0OTz15q7Yp1OezBVYX3Mmazt5ILr7RPcW0qgtEQSy8Drn0qXS75ha28ryxiUxknceCMVpjSL1I4kjtJo96GKck7wFPXAz9elNt9CubZsxWQxFJiOIxYUr3brx0rWLr+ylCUW7h7WHcq2ySGSzR13qY2dfKwrKO+TVSwgFxHO0DI5BaVGc7XU5OOR6AfSte50C9e2lSG2BPksBtYpuJPt3FINE1BUWP7MzxwQ8BAIyxI5HvjFcn1ety/C7vyF7WHcx5RP/bK3NtDLNBPGsaGQnO4dceozUr2MMkDSTxSSuFYSkvgc9MD1HcVfi0XU1SLfZuDGTgeYepGc8Hj049alj0rVLe3eFLV5SQHLE4zxyOvJzW8niXFR5WreQ/aR6SRz8cElo5tVuJpwsTMRGwO30IP9OtVbm1aa/FtazCeWbaB5q5Kk4HA/E/lXStomoyaktxNaM/yoPNi+RgBnjH171o+H/Dz22tXV/eIwVWxbLIQT0GWP6gfjW9CliK9SMJ3t1JqYiMY3vqQappP2C2s7OzQySeVJufpljjLf/WrM8xLL/SF86BVtgcBd29vXHp+VdL4isrm6lgNrbvNtjcfK+3aeMfyrC/sLUGtXgNvM5kRV3s5Xb6g+opY7Dz+svli7adDKhUTprmZUt4ktbNlmQRyPEGURPwCPUD3zUTWqXWoLdvdSxPcIWn8uM4UAYHHf8K1jpF8y3Pl2ksE0i7YygAQcY59aig8P6l9jt1liYO4KsSx/djHXGf5Vywp4mD5oxf3M29pDe5n6bbfaLATXkgu4csqqQVJ5wGz+tQahYwQtJcgiB4UEZMDHDnHXPQ89q2W0K/VZo0s3VQ2Y1iICDsevJz6VJcaNfi2eC2tnZZHXchHyFeCc55/Kr5cVKpzWY/bQvfmMeKxgn3jUftEReMBGiYsC2OTn2puj3hFpA0lyu8OQrt3HTn8K2l0nUbZIzDZuLhHIZ1bKkHqQOlMTQLmF38m0IWIqYl8kASn1bnjvzWtN4jklGUW7h7aGt2VIDLL9n4DrPM7hFO1lPrntUFrbx3F9dLGyuJJGIEx5UjgDI64Iz+NbT6HeSONlsgyHc9Uwx7ZFV7TQNRjt7aBoCUjj3OuQnzdNu4c1yrDVuX4Xr5EqrDuZFysxvrW7tIZJY1TyX3sfvk9jVn7HHJve7tnlmjJMgLbRt/u4PercOhalsHmWRXa+8AvnOfoe1TQaTqkIdVtS5mXexduByflJznpWzWJ5FDlenZD9rC1uY56G1NnNHDFNLIsgZzEsgwq49TyMVUvYsSRxW8jyzzRhTHMucH0x681082i6pcSQyS2vmBI9vQKyDOSM9/rWhpXhx18QSX9ysiRRgGJJG3FnPU/QfzrWjSxNacYTvbrcU8RCMb3KN9ov9mWVvaW6NLctCzSyjI+bjn9CMVTklWyEs0ZkgXyF2xlN29jwOPTmui8R2Vzc3CG1t5ZT5LKDG+3ac/zrGbQ9RktpIDbzSFynzs+0YGCVI7jiljMPL6w+WLtp0M6NVOmuZlSFI7OzZHTypNiOixyZXj1H1zUDWiT6g1yb2SFriMyzFEO1T24rWfSL97a78m0lhnlGEVQNgHoaZFoGpm3gWSJt8ilWYyN8n19uv51zwp4mD5oxf3G3tIb3M/T7U3WnRzXri5jcFVHKEHOA2elVdQsooHmukb7PJGvl4gfh29fQ89q2/7EvhHJGtnLGqvmNI8bVXPI9TT7nRr/AOzm3gtmkV5VLRkfJtHOeeetXbFSqc1mHtYp/EZC2UE/nC+e5t2KDyyjFhkDk5o0i8b7JbSSToJdxAZj1FbC6VqFvHEYbSVZgWRyDuXB6kDNRxeH54GfyLQbYWBiQw4WU9CTzxWsHX9nKMot3D2sNdStbmaX7L8gKzSO6ohCsp+tVrO2S4urkRskm92ZRKcMhHAGR6Y/WtuXRLx2/d2qj5ZH4JjOT2JH6VWttC1GO3toDAxSOPcwXCHPTbnvXIsPWtflf3C9rDuZNys39oW13axSzxCPyW3seHzzg1Z+xxSFnu7eSWWMkyDdtXb/AHcHuPSrUOh6l5aiSyddr78GQ859ge1TQ6XqsIkUWjSNMu9izdOTlSc5zWz+s8ihyvTyG6kbaSRz8Ns9nNHBHPLKsgZjGrj5Vx6npj3qpex7XRIZWmnmjAMcy5weeMevNdNNo2pzzQSS2nmbI9u5RsdBuyR79q0NK8OyL4ie/uVdYYwDGshyWfufoP51tRpYmtONOd7dbiniIxje5RvNFOlafb2sCNJctAzTSLkc8ZPvxxiqksq2SzyxGSJfJXbGybt7Hjoe1dH4js7m5mQ2tvLKfJYbkfbtOaxm0TUZLeS3a3mk3lMOz7VwMEgjv0pYzDz+svli7GVGqnTTkylDHHZ2TRshhkCI8apJleOmR+dQm0WbUGuRevC1yhkm2odqEDjjFaz6RfvbXXkWkkM8owgAGwD0NMh0HUzbwLJE+91KsTI3yfX261zwp4iD5oxZt7WG/MZ2n2rXenpNfOLmJsqoBKHrgNnpVe/sYrdpbkOLWSJNjeQ+QzY+96HntWz/AGJfLHJGllLGqvmNIyNqjocnqR3qS60W++yvbw2zSJJIu6Mj5CvU5J5q7YqVTmsw9rG9+Yx47OG4Mgv3ubctGNjIxYFscnijRrtjZwNLOnmCQhXY9QDjP5VsLpWoW0cTQ2kqzo5DENuXB6kCmp4eng3rBbfJGQ0aeThZW9Tzx1/StYSr8koyi3cPbQ6sqxtLKsL7VZZrhmVUwrBvXPpVa2tluNUugrK4eQ/LMcMm0AYyPfmtxtFu3dCtqi5LOcEpg46ZFVbXQdRjt7aAwEBQXcDCkH03fjXIsPWSb5X9wlVh0ZkXizm6s7qCOWdYFMcwdsgOSOhq0LNZ3LXUDvMrbim/aoXupz39KtRaJqRRlexkVS+8AyHkZ6EDjPf8KsRaXqkMrstsztMCclj8uD0JJzyK2f1nkVPlat5D9rFLSRziWzWU0SW9xIUnkyIFYHC4ORk9CKrXqrH5UvnPJIykeTOM45zyO/QV0k+i6nceQ0tlv8tWAAG1o8479+OKuWfhuWbxDHdXUci20UYYiYhi79h9PWtaUMVWlGnK9hSrxjG9zN/sWXTdKt0CO91NB5kxHAQemPpximXMgtI7owmSMNGqRxMm7czDHOeg59a6PxJZXV1MptLeWU+SRujfbtOayH0TUJImhNvLLmRG3s+1WAwcFe/pSxWGlHENRi7IypVVKCcmU0EdjalNnlSxlHjVJMqB2z+FVWso/tdxML6WHzYzNKVjO1XPt/kVrS6RqEljcrb2ssM8p3AYATHpinJ4f1B1gSSEkunzszthefun+VYU6eJg7xi9Tb2sFrczbKyNzp0Mt6y3BmQBM5TYT0Y9sVSv7SKF5bqL9zIzCNVhY7WbOM+hBrdXQ7/y9hs5UCyfKqkbVQnpjqafc6LqLRpbwW7PH525lf8A1YA6HnnrzVqOKdTnsw9rBP4jn9Q0+3n0+8+0i4ilA3RFCWXAHXPpUHh2cwLG7SqsjR55Gc8dK6gaRfIkSR2cke5TFMQdw2n0BP1qO20C7t5zLDZ4KPiOMxKEK92xng8V0U/rHspQlFu5LrQ7mPa2Di6tlKh42Rn2q20oO+TT9Oto3t5hG8bA7pV8wYKnPqO4HGa3Lnw/eSwypHBGf3LBc/Lkk9OD1pv9gahtCmEyRwwgKpYJlj1Ax6VyyoV3H4H9wlVhbcxWhuDq6XVlbs0NwgjQSNk7h1xU/wBjhaCR5bQSyIGWVnYgNn0HqKvQaBqaRxs9moePOBuznPfr/nNSRaLq1vDJDFbhlwG3Ow+Y45X1yD68Vc44qUVDlenkU6sNlJHOpa/ZZTbQPLOFhLMgkwB6Y7+vFN8K6P8A2pqkBd5HQRDzGx8uwHOB+fXvXRSaFqktyJprfzwEUZYhH4zxwfXmt7w3oo0XTFSQhrmQAyuB6DAA9hXdg8PWq1F7VOy7mVfExjC0Xqa6qFUKowAMADtUkP3z9KZUkP3z9K+nPFI6KKKACkBDdDn6VzXj6G/n8NIthDcXMK3cL39vakiaa2DZkVMEHPTIByQCB1rD0WPwbda9YSeDrqPRdRhl3T2fkPbvcxYIaNonC7uSDuwSCKAPQqSvPvEHgzw/F4o8NRx6aix3l9MlwokfEg+zyMM/N/eAP4VZ8R6Pai207wToMT2cWrTNLdmB2DQ2yAGRs5yCzeWg/wB40Adz0pMjdjIz6ZrgE8WajpHwjv7y6Ky63oytp8zOMh7hGEayH2bcj/Q1ZvPCfg3RdLibxTLbfbJRtfVL2fZPLLjJZZCQVOeQFwBQB21LXlfiW9sj4T8HnXNXi1mwXWPJuby0DutwixTBdwjyWbhd2O4Jrc8Lv4Dm12P/AIRq2Zb9FZkY21zHgYweZAF6GgDuKMEdeK5jxxfXVvp2nadYTvbT6xqMVj9oj4eJDuZ2X0bahAPbOe1UZdOXwh4s0NtJubpdP1SaSyubSe4eZTJ5bSJKpckqw2MDg4O7pxQB2tFFFABRRRQAlLWP4t/tP/hENU/sDf8A2j9nb7P5eN27/ZzxuxnHviuKtoPCV/HEng/V30jxEjo0TX8syTOwI3JLHIQZARkHr14oA9NwfQ/lQQR1GPrXAfEXw3psPh+61WFLqK+kvLUNLHfTKMPPGrAKHwMqSOB3rR1ywtfCnhq5g8OLLBe6pKllbmS4klIlc7Qw3scbQWbj+7QB11Fch4Ouzo9jrGg31zNcS6BIxWSd90ktsy+ZE5PfjcufVKoaRoWl6t4bh8R+NpzcXN+i3DSXF00UVor8pHGAwCgAgZ6k5OaAO+70uD6H8q8z8QTy2Hwj8Rpa+IF1OC2z9luornfNFCWUhHcHkrlgD1K4zzVi1/4VnLfQR2moF53lVYl/tC6O5yRgYLY64oA9D60Vn6+7R+GtUeNijpZzFWU4IIQ4NVvB0sk/gXQZZnaSSTTbdndjksTGpJJ9aANmiiigAooooASlx3rD8Zz6lbeDtSm0MS/bVi+QwpvkUZG5kXuwXcQPUVy1nbaFerbTeAPErLq8Msbut3fyyG5QEb0likOclc8hQQemKAPReaSvP/Gvh22s5NKntL7VonvtaggnC6pOFMbltygb8L07YxWnr1qfDfhaSw0G4uxe6pcJZ20tzdSTtHJJ8pcFySNqhmwP7tAHW0uDXI+FdXfT/Deq2Wq3EtzdeG5JYp5JjmSWJV8yOQnvuQjn1BqrpXh2DVtDh1vxfqV3Je3yLOCt89tFZq4yscYRlAwCOTkk5PtQB3FFec6/Pe6Z8OxFqOvi6ii1W2g/tOG42StatOgPmOmAHCkgkeme9XdMi8Dy6rbJpviee6u/MBhhGvzSb2HONhkIbp0oA7mkrn/H1zPZ/DvXrm0leGeKxleOSM4ZGA4IPaq73dwPiRo9sJ5PIk0WeV49x2s4kiAYj15P50AdTRRRQAUUUhzg4GT2HrQAtFeXeHvI8Taa8useLNQ07xU8j77ZLzyTYuGIWNbc/KygAdQ27rnmtrW9B1abwrPqmp6/qVnqtpprtKmmXXl27SojHcFK55PJoA7f60VyPh7T00HQ49f1PX9XvE/s8TTpfXXmRqNodmC7Rg8HHPeqHgjWtb/tuSz8Uu4k1q1Gr2Ebji3UnD2w/wBwGM+vzNQB3tJXGW8F1401nU5ry/u7PRdPunsre1sp2hNy6Y8yWR1w2AxKhQQPlJOc1ZsLfVNFbVbRL99Q0pbRri0uri5ElzDLggxHuyAAMrHnkgk8UAdXSV5R4STTNV8H6Tf6t8RdWjvrq0jluEGsxptdlBI2kcc9q9TtIxFawxrK86qiqJZG3M4x1J7k9c0AS0V5zpWuapN4b0GeW+maWfxTPaSsTy8IluAEPthV/IV0nhm+ubvXfFMVzO8sdrqaxQKx4jQ28TYHtlifxoA6KiiigApKWuO8c6rcWuoaJph1OTRNO1CWRbrU49oZNq5SIOwKoXJPzEfw4HJoA7H8aK5HTtH1i1vjDYeI7rU9DvbaRWnuJo5LizlwNrxSBfmByeGzggHvWNN4c1qLxlZ6QvjvxEYJ7CW5ZibfcGR0UAfusYwx7UAejUVwPiy/1/S7aw0TwzfT3moWds+pXlzcKrSTQxdI2wAMyMccAcKa2NY8Vk+EtP1Lw6sdxcay8EOniX7gaboz47KMkj/ZxQB09FcbN4S1+ztDeaX4u1W61WMb/LuzGba4Yc7DGFGxT0ypBHrVDxNd6le+N9A0mXXbvw3Bc6XcXVyttJEG81WiAQs6sDjew460Aeg0VznhzSjZXksv/CX6hroKbTDcywOqc/e/dopz2qPxRqd5Y+JfCVtaTtFDfalJDcoAP3iC2lYA/wDAlB49KAOnornPB1/eS2uoabq9y1xe6TeyW8k7gBpYz88TnGBkoy/iDS+C7281bRp9WvJ3kjv7qSa0jIAEVuDtjA+oXdz/AHqAOiooooAKkh++fpUdSQ/fP0oAjooooAxPE9trUlraXXhyYfarK4Ez2jvsjvY8ENEzYOOuQcdVFYV+Na8W3+lwS+GpdJhs76K7mvLyeJmXy23bIwhYktjBJwME9eldxRQBia1pt1e+IvDt3bqphsLuWWclsFVMEiAgd/mYVj3Xge18S+K9R1TxVYiaKMJbaagndSsQG53Oxhgs5PB7KK7OigDgB8OoLW61rRbCDyPDWuWI83bMWe3ulOA67iScrtOc9UFXotW8WwWi6ffeFV1C/jGxL5LmMWsvYSNuO9PUqFJ9M12NFAHmEHhXxJo+gaT5NjHql9p/iK41GWOOdIRLHJ5vzKW4HMg49K67S9b8RXmoRwal4Sl063bO65bUIZQnHHyryc9K6GigDA8YaPdatpdtLpflnUdNvI761SVtqyOmcoT23KzDPYms6GPW/E3ibS7zUtIfR9N0lnnEVzKjy3FwyFFwEJARVZuSckkcV2FFABRRRQAUUUUAZuvw6nPoVymgTpBqIAaB5PulgQdp4OAwBXPbNcf4ouNT8YeGbnRV8F3tvqF3H5YnvTD5Fmx/5aiRWLHb1G0ZOB0r0KigDm/GGk3mo+C/7Osgbq5We0bJIBcRzxszc+yk1U8ReFW8W+LbVdXWdNF023aWLybhomluXON25CGGxAR/wOuvooA4i28CweHfFtpf6DFdSW17DJZaotxdvMTHjdG+ZGJ+VtwwP79Jp0uqeG9JTw9q3hu71u1tQIrS6s1ilSaIfcEiuy7HUYB6jjOa7iigDy+78L6/c+EPGaPpdvb3erNDLa2Vqy7UCqo2buAWG3k8DJOOOa6dPFGpPMoPgfWIwWALF7bC+/EldTRQBR1m3ku9A1C3gXdLNayxouerFCAPzNQeFrOfTvB+jWV4nl3FtYQQypnO11jAI49xWrRQAUUUUAFFFFAGX4iOrrocsnh0I1/EySJFJgCZQwLR5PALLkA9ia4zxbK3jHQ206w8JalFrEjJ5Nzd2yw/YH3A+b5wP8PXCk56d69HooA5vxdp15f2+graRtcNbaxazzMuBtRSdzn86o694ZuvFfjOH7fNfWOk6Vbb7eSzuWgea5kOCQynOEQY/wC2hrsqKAOFtvBH9ieKi1lLqN/p+tWUtnqcl7dtcOhVcxNuc5xguuPcUWl5Np2gxeHfFvhi71U2YWGKS3tFuYLtE4R+T8jYxkNjB6HFd1RQB5UPD2rweF9Wb/hHhatNr9pqEWmWKodsCGEsoAwpYBDntnPOOa7C28S+deRRjwfrlvvcL5slnCqx5PUkSZAFdLRQBg+ObC51TwFrdjYRNNc3FlJHFGvV2IwBVdtOvD8QdJv/ACG+ywaPNBJLkYWRniIX8lP5V01FABRRRQAUyUO0LiFgshUhGYZAOOCR9afRQBwLavaX+hx2Xj3wpdXeqxx+XcRRaWZ0mccbopANoB6jkEZ7YrQ0vTNTt/hLNp19HKb46fcRpA8nmSKGD+XGW/iYKVXPqK67J6dqKAOJ17TtQ1PwfoXhqGC4jXUBDDqE6DH2aBEDPkngMSoQD/aNVtb8K3+kTad4gsdU1jWrrS7lX+y3Eiyb4XISUKAoO7acj/drv6KAOKgeXwlqWr2ep2F1eaJqNy93bXFrbtP5ZkA8yGRFBI+bJBwQQ2OMVgaXoAX4gXGo6B4cbSdGl0K4tkBtfJaabep3FewIOFzg/K3GMV6oCR0ooA8y8HXmm6T4J0bT9V8Iakb21soopz/Ypf51UA/NjnnvXpNtKs1vFKiPGrqGCOu1lHoR2PtUlFAHm+laNqUPhvQIZbKZJIPFU91KhXlIjLcEOfbDLz7iul8M2Vza654pluYHiS51NZYWYYEi/Z4lyPUZBH4V0dFABRRRQAVzniTVbnS9Sszdaab7QZo5I7xorczPDJwUZkGSUI3A4Bwcdq6OgcUAedaVb6VJ48sLvwNp1zZW+2T+1ZYrd7e1kTadi7GABk34IKjIGcmukubadviTp1yInMCaVPG0u35QxljIUn1wD+VdCST1JooA4PSdF1jXdW1bxC2rajoX2y4NvBbpDFk28JKIzCRCRuO9sejCs630DWNO0G40ewhku7rw3qseoaa0yiNbyBvmMYYDaGw0i4HAO3oDXpvXrRQB5z4lu/Dfiy1/eaJqd9rEcLJb2jQXEDRMezkYUAHkkk9OM1jQ2KW154FuPFOjXF/bW3h2WC4D2D3WycmHG5dpIPytyea9fyfU0biOhIoA5vw3c+HHvJYvD+itp0rJmRv7Ja0DgHpuKAHr0qDxZaXNz4q8Gy28EkkdtqkjzOikiNTbSqCx7DJAz711ZJPUk/jRk0AeeeOdM1mLXX/4R+KYx+JrQaXeTRA/6K4b5Zz6ARvKM+oWu9tLSGwsYLO0QJBbxrFGo7KowB+QqYcUUAFFFFABUkP3z9KjqSH75+lAEdFWdq/3R+VG1f7o/KgCtRVnav8AdH5UbV/uj8qAK1FWdq/3R+VG1f7o/KgCtRVnav8AdH5UbV/uj8qAK1FWdq/3R+VG1f7o/KgCtRVnav8AdH5UbV/uj8qAK1FWdq/3R+VG1f7o/KgCtRVnav8AdH5UbV/uj8qAK1FWdq/3R+VG1f7o/KgCtRVnav8AdH5UbV/uj8qAK1FWdq/3R+VG1f7o/KgCtRVnav8AdH5UbV/uj8qAK1FWdq/3R+VG1f7o/KgCtRVnav8AdH5UbV/uj8qAK1FWdq/3R+VG1f7o/KgCtRVnav8AdH5UbV/uj8qAK1FWdq/3R+VG1f7o/KgCtRVnav8AdH5UbV/uj8qAK1FWdq/3R+VG1f7o/KgCtRVnav8AdH5UbV/uj8qAK1FWdq/3R+VG1f7o/KgCtRVnav8AdH5UbV/uj8qAK1FWdq/3R+VG1f7o/KgCtRVnav8AdH5UbV/uj8qAK1FWdq/3R+VG1f7o/KgCtRVnav8AdH5UbV/uj8qAK1FWdq/3R+VG1f7o/KgCtRVnav8AdH5UbV/uj8qAK1FWdq/3R+VG1f7o/KgCtRVnav8AdH5UbV/uj8qAK1FWdq/3R+VG1f7o/KgCtRVnav8AdH5UbV/uj8qAK1FWdq/3R+VG1f7o/KgCtRVnav8AdH5UbV/uj8qAK1FWdq/3R+VG1f7o/KgCtUkP3z9Kl2r/AHR+VAUDoAPwoA//2Q=="}},"execution_count":null},{"metadata":{},"cell_type":"markdown","source":"## Now the Question is, How to diagnose skin cancer...\nFirst, a doctor will examine the skin and take a medical history.\n\nThey will usually ask when the mark first appeared, if its appearance has changed, if it is ever painful or itchy, and if it bleeds.\n\nThe doctor will also ask about a person’s family history, and any other risk factors, such as lifetime sun exposure.They may also check the rest of the body for other atypical moles and spots. Finally, they may feel the lymph nodes to determine if they are enlarged. The doctor may refer a person to a dermatologist, a skin doctor, who may:\n* examine the mark with a dermatoscope, a handheld magnifying device\n* take a small sample of skin, a biopsy, and send it to a lab to check for signs of cancer","execution_count":null},{"metadata":{},"cell_type":"markdown","source":"## Let see some Stats....\n\nThis year an estimated 100,350 adults (60,190 men and 40,160 women) in the United States will be diagnosed with invasive melanoma of the skin. Melanoma is the fifth most common cancer among men and the sixth most common cancer among women.  \n\nMelanoma is 20 times more common in white people than in black people.**(so you can say that Melanoma is a kind of Racist dieases). Apart from joke,** The average age of diagnosis is 65. Before age 50, more women are diagnosed with melanoma than men. However, by age 65, men are 2 times more likely to be diagnosed with melanoma. By age 80, men are 3 times more likely to be diagnosed with melanoma.  \n\nThe development of melanoma is more common as people grow older, but it also develops in younger people, including those younger than 30 years old. It is one of the most common cancers diagnosed in young adults, particularly for women. This year, about 2,400 cases of melanoma will be diagnosed in people age 15 to 29.   \n\nThe number of people diagnosed with melanoma has risen sharply over the past 3 decades, although this varies by age. In men and women ages 50 and older, the number of people diagnosed with melanoma increased more than 2% per year from 2007 to 2016. However, the rate decreased by more than 1% per year in people younger than 50. \n\nSpecifically, the number of adolescents age 15 to 19 diagnosed with melanoma declined 6% each year between 2007 and 2016. The number of adults in their 20s diagnosed with the disease decreased by 3%. For adults in their 30s, the number of people diagnosed with melanoma remained steady in women and dropped slightly for men. The decrease in melanoma in younger people is likely due in part to increased sun-protection behaviors and a reduction in indoor tanning.  \n\nMelanoma accounts for about 1% of all skin cancers diagnosed in the United States, but it causes most of the skin cancer deaths. It is estimated that 6,850 deaths (4,610 men and 2,240 women) from melanoma will occur this year. However, from 2013 to 2017, deaths from melanoma have decreased by almost 6% in adults older than 50 and by 7% in those younger than 50. \n\nMost people with melanoma are cured by their initial surgery. The 5-year survival rate tells you what percent of people live at least 5 years after the cancer is found. Percent means how many out of 100. Among all people with melanoma of the skin, from the time of initial diagnosis, the 5-year survival is 92%.  \n\nOverall survival at 5 years depends on the thickness of the primary melanoma, whether the lymph nodes are involved, and whether there is spread of melanoma to distant sites. Lymph nodes are small, bean-shaped organs that help fight infection. For people with \"thin melanoma,\" defined as being less than 1 millimeter in maximal thickness, that has not spread to lymph nodes or other distant sites, the 5-year survival is 99%.  \n\nHowever, for people with thicker melanoma, the 5-year survival may be as low as 80%. Survival rates at 5 years for people with melanoma that has spread to the nearby lymph nodes is 65%. However, this number is different for every patient and depends on the number of lymph nodes involved, the amount of tumor in the involved lymph node(s), and the features of the primary melanoma (such as thickness and whether ulceration is present or absent).  \n\nIf melanoma has spread to other, distant parts of the body, the survival rate is lower, about 25%. However, survival varies depending on a number of factors. These factors are explained in detail in the Diagnosis and Stages sections. ","execution_count":null},{"metadata":{},"cell_type":"markdown","source":"# Causes and risk factors...\nResearchers do not know why certain cells become cancerous. However, they have identified risk factors for skin cancer.\nThe most important risk factor for melanoma is exposure to ultraviolet (UV) rays. These damage the skin cells’ DNA, which controls how the cells grow, divide, and stay alive. Most UV rays come from sunlight, but they also come from tanning beds.\n\nOther risk factors include:\n* Moles – A person with more than 100 moles is more likely to develop melanoma.\n* Fair skin, light hair, and freckles – The risk of developing melanoma is higher among people with light skin. Those who burn easily have an increased risk.\n* Family history – Around 10 percent of people with the disease have a family history of it.\n* Personal history – Melanoma is likelier to form in a person who has already had it. People who have had basal or squamous cell cancers also have an increased risk of developing melanoma.\n\n## Non-cancerous skin growths...\nIt can be easy to mistake benign growths for skin cancer. The following skin conditions have similar symptoms to skin cancer:\n\n* **Seborrheic keratosis:** brown, black, or tan growths that appear in older adults.\n* **Cherry angioma or hemangioma:** small growths, made up of blood vessels, that are typically red but may rupture and turn brown or black.\n* **Freckles:** flat, darker areas of skin that appear after the skin is exposed to UV light.\n* **Dermatofibroma:** small, firm, round bumps that form under the skin and may change color over time.\n* **Skin tags:** harmless, soft growths.\n\n# Treatment...\n* A doctor usually removes basal cell and squamous cell cancers with minor surgery.\n\n* Radiation therapy is an alternative treatment when a person cannot undergo surgery. A doctor may also recommend this treatment when the cancer is in a place that would make surgery difficult, such as on the eyelids, nose, or ears.\n\n* For melanoma, the best treatment will depend on the stage and location of the cancer. If a doctor diagnoses melanoma early, they can usually remove it with minor surgery.\n\n* In some cases, doctors may suggest other types of surgery or radiation therapy.\n\n## Preventing skin cancer...\nThe best way to reduce the risk of skin cancer is to limit exposure to UV rays. A person can do this by using sunscreen, seeking shade, and covering up when outdoors.\n\nAnyone wishing to prevent skin cancer should also avoid tanning beds and sunlamps.\n\n## Melanoma: Survivorship...\nSurvivorship is one of the most complicated parts of having cancer. This is because it is different for everyone.\n\nSurvivors may experience a range of feelings, including joy, concern, relief, guilt, and fear. Some people say they appreciate life more after a cancer diagnosis and have gained a greater acceptance of themselves. Others become very anxious about their health and uncertain about coping with everyday life.\n\nSurvivors may feel some stress or anxiety when their treatment ends and their visits to the health care team become less frequent. Often, relationships built with the cancer care team provide a sense of security during treatment, and people miss this source of support. This may be especially true when new worries and challenges surface over time, such as any late effects of treatment, emotional challenges including fear of recurrence, sexual health and fertility concerns, and financial and workplace issues.\n\nEvery survivor has individual concerns and challenges. With any challenge, a good first step is being able to recognize your fears and talk about them. Effective coping requires:\n\n* Understanding the challenge you are facing\n\n* Thinking through solutions\n\n* Asking for and allowing the support of others\n\n* Feeling comfortable with the course of action you choose\n\nMany survivors find it helpful to join an in-person support group or an online community of survivors. This allows you to talk with people who have had similar first-hand experiences. Other options for finding support include talking with a friend or member of your health care team, individual counseling, or asking for assistance at the learning resource center of the place where you received treatment.","execution_count":null},{"metadata":{},"cell_type":"markdown","source":"## Melanoma: Latest Research...\nDoctors are working to learn more about melanoma, ways to prevent it, how to best treat it, and how to provide the best care to people diagnosed with this disease. The following areas of research may include new options for patients through clinical trials. This section is not meant to be a complete list of new clinical trials because this field is changing rapidly. Always talk with your doctor about the best diagnostic and treatment options for you.\n\n* **Enhanced prevention and early detection methods.** There is ongoing research on better prevention and early detection strategies for melanoma. Both primary and secondary prevention are important. Primary prevention involves keeping melanoma from developing, such as reducing exposure of ultraviolet (UV) radiation from the sun and avoiding the use of indoor tanning devices. Secondary prevention includes methods of early detection. One promising area is the screening of people with a high risk of developing melanoma.\n\n* **Targeted therapy.** As discussed in Types of Treatment, targeted therapy is a treatment that targets specific genes or proteins. Research has identified a number of molecular pathways and activated or mutated genes in melanoma. Clinical trials are testing new drugs to inhibit the MAP kinase pathway and other pathways that melanoma might use to grow and spread. Strategies to prevent the melanoma from becoming resistant to treatment are also being tested, such as using combinations of drugs or exploring new schedules of giving drugs to patients.\n\n* **Immunotherapy.** Researchers are studying new checkpoint inhibitors and immunotherapies directed at other parts of the immune system. These include TIM3 inhibitors, LAG3 inhibitors, OX40 agonists, CD137 agonists, GITR agonists, and IDO inhibitors. Also, a number of combinations of immunotherapies are being looked at, including all of the above agents with anti-PD-1 or anti-PD-L1 antibodies, as well as combinations of targeted therapies with anti-PD-1 or anti-PD-L1 antibodies.\n\n* **Chimeric antigen receptor T-cell (CAR-T) therapy and T-cell receptor (TCR) therapy.** Another type of experimental immunotherapy involves altering a person’s white blood cells, known as lymphocytes, in a laboratory. This is done to increase their ability to fight the tumor. The changed cells are given back to the patient, often in combination with chemotherapy, interleukin-2, and/or other immunotherapies.\n\n* **Vaccines.** Therapeutic vaccines that may improve the specific immune response to melanoma have been the focus of multiple clinical trials. Melanoma peptide vaccines are being evaluated in clinical trials for patients with both localized and advanced melanoma. Research has shown that vaccination can cause the immune system to fight melanoma, even in advanced disease, but these therapies are still considered experimental. The vaccines are made using certain proteins found only on a melanoma tumor and are given as an injection. The person’s immune system then recognizes the proteins and destroys melanoma cancer cells. To date, no vaccines have shown a clinical benefit in patients. Learn more about cancer vaccines.\n\n* **Palliative care/supportive care.** Clinical trials are underway to find better ways of reducing symptoms and side effects of current melanoma treatments to improve comfort and quality of life for patients.","execution_count":null},{"metadata":{},"cell_type":"markdown","source":"## Benign and malignant tumors\n* **Benign tumor**:- A benign tumor put simply is one that will not cause any cancerous growth. It will not damage anythin, it's just a small blot on the landscape of your skin.\n\n* **Malignant tumor**:- A malignant tumor is the evil twin of the benign tumor: it causes cancerous growth. ","execution_count":null},{"metadata":{},"cell_type":"markdown","source":"## What am I predicting?\n* You are predicting a binary target for each image. \n* Your model should predict the probability (floating point) between 0.0 and 1.0 that the lesion in the image is malignant (the target). \n* In the training data, train.csv, the value 0 denotes benign, and 1 indicates malignant.","execution_count":null},{"metadata":{},"cell_type":"markdown","source":"# Imports","execution_count":null},{"metadata":{"trusted":true},"cell_type":"code","source":"import os\nimport gc\nimport json\nimport math\nimport cv2\nimport PIL\nimport re\nimport numpy as np\nimport pandas as pd\nfrom PIL import Image\nimport tensorflow as tf\nfrom tensorflow.keras import layers\nfrom tensorflow.keras.models import Sequential\nfrom tensorflow.keras.optimizers import Adam\nimport matplotlib.pyplot as plt\n#from sklearn.metrics import cohen_kappa_score, accuracy_score\nimport scipy\nfrom tqdm import tqdm\n%matplotlib inline\n#from keras.preprocessing import image\nimport glob\nimport tensorflow.keras.applications.densenet as dense\nfrom kaggle_datasets import KaggleDatasets\nimport seaborn as sns","execution_count":null,"outputs":[]},{"metadata":{"trusted":true},"cell_type":"code","source":"tf.__version__","execution_count":null,"outputs":[]},{"metadata":{},"cell_type":"markdown","source":"## Few Word about dataset...\n\n### What should I expect the data format to be?\nThe images are provided in DICOM format. This can be accessed using commonly-available libraries like **pydicom**, and contains both image and metadata. It is a commonly used medical imaging data format.\n\nImages are also provided in **JPEG** and **TFRecord** format (in the jpeg and tfrecords directories, respectively). Images in TFRecord format have been resized to a uniform 1024x1024.\n\nMetadata is also provided outside of the DICOM format, in CSV files. See the Columns section for a description.\n\n## Columns...\n* **image_name** - unique identifier, points to filename of related DICOM image\n* **patient_id** - unique patient identifier\n* **sex** - the sex of the patient (when unknown, will be blank)\n* **age_approx** - approximate patient age at time of imaging\n* **anatom_site_general_challenge** - location of imaged site\n* **diagnosis** - detailed diagnosis information (train only)\n* **benign_malignant** - indicator of malignancy of imaged lesion\n* **target** - binarized version of the target variable","execution_count":null},{"metadata":{"trusted":true},"cell_type":"code","source":"train = pd.read_csv('/kaggle/input/siim-isic-melanoma-classification/train.csv')\ntest = pd.read_csv('/kaggle/input/siim-isic-melanoma-classification/test.csv')\n\nprint('Train: ', train.shape)\nprint(\"Test:\", test.shape)","execution_count":null,"outputs":[]},{"metadata":{"trusted":true},"cell_type":"code","source":"train.head()","execution_count":null,"outputs":[]},{"metadata":{"trusted":true},"cell_type":"code","source":"train.info()","execution_count":null,"outputs":[]},{"metadata":{"trusted":true},"cell_type":"code","source":"test.head()","execution_count":null,"outputs":[]},{"metadata":{"trusted":true},"cell_type":"code","source":"test.info()","execution_count":null,"outputs":[]},{"metadata":{},"cell_type":"markdown","source":"## Data EDA...\n\nLet first analyse the CSV file, and Understand the data contain in it...","execution_count":null},{"metadata":{"trusted":true},"cell_type":"code","source":"train['benign_malignant'].value_counts(normalize=True)","execution_count":null,"outputs":[]},{"metadata":{"trusted":true},"cell_type":"code","source":"sns.countplot(train['benign_malignant'])","execution_count":null,"outputs":[]},{"metadata":{"trusted":true},"cell_type":"code","source":"train['sex'].value_counts(normalize=True)","execution_count":null,"outputs":[]},{"metadata":{"trusted":true},"cell_type":"code","source":"train['target'].groupby(train['sex']).mean()","execution_count":null,"outputs":[]},{"metadata":{"trusted":true},"cell_type":"code","source":"sns.countplot(train['sex'], hue=train['target'])","execution_count":null,"outputs":[]},{"metadata":{"trusted":true},"cell_type":"code","source":"train['target'].groupby(train['age_approx']).mean()","execution_count":null,"outputs":[]},{"metadata":{"trusted":true},"cell_type":"code","source":"plt.figure(figsize=(8,5))\nsns.countplot(train['age_approx'], hue=train['target'])","execution_count":null,"outputs":[]},{"metadata":{"trusted":true},"cell_type":"code","source":"train['anatom_site_general_challenge'].value_counts(normalize=True)","execution_count":null,"outputs":[]},{"metadata":{"trusted":true},"cell_type":"code","source":"train['target'].groupby(train['anatom_site_general_challenge']).mean()","execution_count":null,"outputs":[]},{"metadata":{"trusted":true},"cell_type":"code","source":"plt.figure(figsize=(10,5))\nsns.countplot(train['anatom_site_general_challenge'], hue=train['target'])","execution_count":null,"outputs":[]},{"metadata":{},"cell_type":"markdown","source":"We cannnot fill this diagnosis column, because it may affect other variable too. like if we put diagnosis is \"nevus\" but actually it is melanoma, then it may affect it in deciding bengin or, Maligment.","execution_count":null},{"metadata":{"trusted":true},"cell_type":"code","source":"train['diagnosis'].value_counts(normalize=True)","execution_count":null,"outputs":[]},{"metadata":{"trusted":true},"cell_type":"code","source":"train['target'].groupby(train['diagnosis']).mean()","execution_count":null,"outputs":[]},{"metadata":{"trusted":true},"cell_type":"code","source":"plt.figure(figsize=(15,5))\nsns.countplot(train['diagnosis'], hue=train['target'])","execution_count":null,"outputs":[]},{"metadata":{"trusted":true},"cell_type":"code","source":"train_df = train[['sex','age_approx','anatom_site_general_challenge','diagnosis','target']]\ntrain_df.head()","execution_count":null,"outputs":[]},{"metadata":{"trusted":true},"cell_type":"code","source":"from sklearn.preprocessing import LabelEncoder\nle = LabelEncoder()\ntrain_df = train_df.apply(lambda col: le.fit_transform(col.astype(str)), axis=0, result_type='expand')\ntrain_df.head()","execution_count":null,"outputs":[]},{"metadata":{"trusted":true},"cell_type":"code","source":"g = sns.pairplot(train_df, hue=\"diagnosis\")","execution_count":null,"outputs":[]},{"metadata":{},"cell_type":"markdown","source":"## checking the correlation between features and Target...","execution_count":null},{"metadata":{"trusted":true},"cell_type":"code","source":"sns.heatmap(train_df.corr(),annot=True,linewidths=0.2) \nfig=plt.gcf()\nfig.set_size_inches(20,12)\nplt.show()","execution_count":null,"outputs":[]},{"metadata":{},"cell_type":"markdown","source":"Interpreting The Heatmap The first thing to note is that only the numeric features are compared as it is obvious that we cannot correlate between alphabets or strings. Before understanding the plot, let us see what exactly correlation is.\n\nPOSITIVE CORRELATION: If an increase in feature A leads to increase in feature B, then they are positively correlated. A value 1 means perfect positive correlation.\n\nNEGATIVE CORRELATION: If an increase in feature A leads to decrease in feature B, then they are negatively correlated. A value -1 means perfect negative correlation.\n\nNow lets say that two features are highly or perfectly correlated, so the increase in one leads to increase in the other. This means that both the features are containing highly similar information and there is very little or no variance in information. This is known as MultiColinearity as both of them contains almost the same information.\n\nSo do you think we should use both of them as one of them is redundant. While making or training models, we should try to eliminate redundant features as it reduces training time and many such advantages.","execution_count":null},{"metadata":{},"cell_type":"markdown","source":"### I hope You got the Data Exploration.... \n\n# Now Move to data Visualization...\nData visualization is the graphic representation of data. It involves producing images that communicate relationships among the represented data to viewers of the images. This communication is achieved through the use of a systematic mapping between graphic marks and data values in the creation of the visualization.","execution_count":null},{"metadata":{},"cell_type":"markdown","source":"### Writing Helper Fucntion....","execution_count":null},{"metadata":{"trusted":true},"cell_type":"code","source":"def display_training_curves(training, validation, title, subplot):\n  if subplot%10==1: # set up the subplots on the first call\n    plt.subplots(figsize=(10,10), facecolor='#F0F0F0')\n    plt.tight_layout()\n  ax = plt.subplot(subplot)\n  ax.set_facecolor('#F8F8F8')\n  ax.plot(training)\n  ax.plot(validation)\n  ax.set_title('model '+ title)\n  ax.set_ylabel(title)\n  ax.set_xlabel('epoch')\n  ax.legend(['train', 'valid.'])\n\ncols, rows = 4, 3\ndef grid_display(list_of_images, no_of_columns=2, figsize=(15,15), title = False):\n    fig = plt.figure(figsize=figsize)\n    column = 0\n    z = 0\n    for i in range(len(list_of_images)):\n        column += 1\n        #  check for end of column and create a new figure\n        if column == no_of_columns+1:\n            fig = plt.figure(figsize=figsize)\n            column = 1\n        fig.add_subplot(1, no_of_columns, column)\n        if title:\n            if i >= no_of_columns:\n                plt.title(titles[z])\n                z +=1\n            else:\n                plt.title(titles[i])\n        plt.imshow(list_of_images[i])\n        plt.axis('off')","execution_count":null,"outputs":[]},{"metadata":{},"cell_type":"markdown","source":"## Visualize the Chunk of Non-Melanoma Images...","execution_count":null},{"metadata":{"trusted":true},"cell_type":"code","source":"image_list = train[train['target'] == 0].sample(8)['image_name']\nimage_all=[]\nfor image_id in image_list:\n    image_file = f'/kaggle/input/siim-isic-melanoma-classification/jpeg/train/'+image_id+'.jpg' \n    img = np.array(Image.open(image_file))\n    image_all.append(img)\n#show_images(image_all, cols=1)\ngrid_display(image_all, 4, (15,15))","execution_count":null,"outputs":[]},{"metadata":{},"cell_type":"markdown","source":"## Visualize the Chunk of Melanoma Images...","execution_count":null},{"metadata":{"trusted":true},"cell_type":"code","source":"image_list = train[train['target'] == 1].sample(8)['image_name']\nimage_all=[]\nfor image_id in image_list:\n    image_file = f'/kaggle/input/siim-isic-melanoma-classification/jpeg/train/'+image_id+'.jpg' \n    img = np.array(Image.open(image_file))\n    image_all.append(img)\ngrid_display(image_all, 4, (15,15))","execution_count":null,"outputs":[]},{"metadata":{},"cell_type":"markdown","source":"## Visualize the skin cancer at torso...","execution_count":null},{"metadata":{"trusted":true},"cell_type":"code","source":"image_list = train[train['anatom_site_general_challenge'] == 'torso'].sample(4)['image_name']\nimage_all=[]\nfor image_id in image_list:\n    image_file = f'/kaggle/input/siim-isic-melanoma-classification/jpeg/train/'+image_id+'.jpg' \n    img = np.array(Image.open(image_file))\n    image_all.append(img)\ngrid_display(image_all, 4, (15,15))","execution_count":null,"outputs":[]},{"metadata":{},"cell_type":"markdown","source":"## Visualize the skin cancer at lower extremity...","execution_count":null},{"metadata":{"trusted":true},"cell_type":"code","source":"image_list = train[train['anatom_site_general_challenge'] == 'lower extremity'].sample(4)['image_name']\nimage_all=[]\nfor image_id in image_list:\n    image_file = f'/kaggle/input/siim-isic-melanoma-classification/jpeg/train/'+image_id+'.jpg' \n    img = np.array(Image.open(image_file))\n    image_all.append(img)\ngrid_display(image_all, 4, (15,15))","execution_count":null,"outputs":[]},{"metadata":{},"cell_type":"markdown","source":"## Visualize the skin cancer at Upper extremity...","execution_count":null},{"metadata":{"trusted":true},"cell_type":"code","source":"image_list = train[train['anatom_site_general_challenge'] == 'upper extremity'].sample(4)['image_name']\nimage_all=[]\nfor image_id in image_list:\n    image_file = f'/kaggle/input/siim-isic-melanoma-classification/jpeg/train/'+image_id+'.jpg' \n    img = np.array(Image.open(image_file))\n    image_all.append(img)\ngrid_display(image_all, 4, (15,15))","execution_count":null,"outputs":[]},{"metadata":{},"cell_type":"markdown","source":"## Visualiza the skin cancer at head/neck...","execution_count":null},{"metadata":{"trusted":true},"cell_type":"code","source":"image_list = train[train['anatom_site_general_challenge'] == 'head/neck'].sample(4)['image_name']\nimage_all=[]\nfor image_id in image_list:\n    image_file = f'/kaggle/input/siim-isic-melanoma-classification/jpeg/train/'+image_id+'.jpg' \n    img = np.array(Image.open(image_file))\n    image_all.append(img)\ngrid_display(image_all, 4, (15,15))","execution_count":null,"outputs":[]},{"metadata":{},"cell_type":"markdown","source":"## Visualiza the skin cancer at Palms/soles...","execution_count":null},{"metadata":{"trusted":true},"cell_type":"code","source":"image_list = train[train['anatom_site_general_challenge'] == 'palms/soles'].sample(4)['image_name']\nimage_all=[]\nfor image_id in image_list:\n    image_file = f'/kaggle/input/siim-isic-melanoma-classification/jpeg/train/'+image_id+'.jpg' \n    img = np.array(Image.open(image_file))\n    image_all.append(img)\ngrid_display(image_all, 4, (15,15))","execution_count":null,"outputs":[]},{"metadata":{},"cell_type":"markdown","source":"## Visualiza the skin cancer at Oral/genital...","execution_count":null},{"metadata":{"trusted":true},"cell_type":"code","source":"image_list = train[train['anatom_site_general_challenge'] == 'oral/genital'].sample(4)['image_name']\nimage_all=[]\nfor image_id in image_list:\n    image_file = f'/kaggle/input/siim-isic-melanoma-classification/jpeg/train/'+image_id+'.jpg' \n    img = np.array(Image.open(image_file))\n    image_all.append(img)\ngrid_display(image_all, 4, (15,15))","execution_count":null,"outputs":[]},{"metadata":{},"cell_type":"markdown","source":"## Visualiza the skin cancer nevus....","execution_count":null},{"metadata":{"trusted":true},"cell_type":"code","source":"image_list = train[train['diagnosis'] == 'nevus'].sample(4)['image_name']\nimage_all=[]\nfor image_id in image_list:\n    image_file = f'/kaggle/input/siim-isic-melanoma-classification/jpeg/train/'+image_id+'.jpg' \n    img = np.array(Image.open(image_file))\n    image_all.append(img)\ngrid_display(image_all, 4, (15,15))","execution_count":null,"outputs":[]},{"metadata":{},"cell_type":"markdown","source":"## Visualiza the skin cancer Melanoma...","execution_count":null},{"metadata":{"trusted":true},"cell_type":"code","source":"image_list = train[train['diagnosis'] == 'melanoma'].sample(4)['image_name']\nimage_all=[]\nfor image_id in image_list:\n    image_file = f'/kaggle/input/siim-isic-melanoma-classification/jpeg/train/'+image_id+'.jpg' \n    img = np.array(Image.open(image_file))\n    image_all.append(img)\ngrid_display(image_all, 4, (15,15))","execution_count":null,"outputs":[]},{"metadata":{},"cell_type":"markdown","source":"## Visualiza the skin cancer seborrheic keratosis...","execution_count":null},{"metadata":{"trusted":true},"cell_type":"code","source":"image_list = train[train['diagnosis'] == 'seborrheic keratosis'].sample(4)['image_name']\nimage_all=[]\nfor image_id in image_list:\n    image_file = f'/kaggle/input/siim-isic-melanoma-classification/jpeg/train/'+image_id+'.jpg' \n    img = np.array(Image.open(image_file))\n    image_all.append(img)\ngrid_display(image_all, 4, (15,15))","execution_count":null,"outputs":[]},{"metadata":{},"cell_type":"markdown","source":"## Visualiza the skin cancer lentigo NOS...","execution_count":null},{"metadata":{"trusted":true},"cell_type":"code","source":"image_list = train[train['diagnosis'] == 'lentigo NOS'].sample(4)['image_name']\nimage_all=[]\nfor image_id in image_list:\n    image_file = f'/kaggle/input/siim-isic-melanoma-classification/jpeg/train/'+image_id+'.jpg' \n    img = np.array(Image.open(image_file))\n    image_all.append(img)\ngrid_display(image_all, 4, (15,15))","execution_count":null,"outputs":[]},{"metadata":{},"cell_type":"markdown","source":"## Visualiza the skin cancer lichenoid keratosis...","execution_count":null},{"metadata":{"trusted":true},"cell_type":"code","source":"image_list = train[train['diagnosis'] == 'lichenoid keratosis'].sample(4)['image_name']\nimage_all=[]\nfor image_id in image_list:\n    image_file = f'/kaggle/input/siim-isic-melanoma-classification/jpeg/train/'+image_id+'.jpg' \n    img = np.array(Image.open(image_file))\n    image_all.append(img)\ngrid_display(image_all, 4, (15,15))","execution_count":null,"outputs":[]},{"metadata":{},"cell_type":"markdown","source":"## Visualiza the skin cancer solar lentigo...","execution_count":null},{"metadata":{"trusted":true},"cell_type":"code","source":"image_list = train[train['diagnosis'] == 'solar lentigo'].sample(4)['image_name']\nimage_all=[]\nfor image_id in image_list:\n    image_file = f'/kaggle/input/siim-isic-melanoma-classification/jpeg/train/'+image_id+'.jpg' \n    img = np.array(Image.open(image_file))\n    image_all.append(img)\ngrid_display(image_all, 4, (15,15))","execution_count":null,"outputs":[]},{"metadata":{},"cell_type":"markdown","source":"## Visualiza the skin cancer atypical melanocytic proliferation...","execution_count":null},{"metadata":{"trusted":true},"cell_type":"code","source":"image_list = train[train['diagnosis'] == 'atypical melanocytic proliferation'].sample(1)['image_name']\nimage_all=[]\nfor image_id in image_list:\n    image_file = f'/kaggle/input/siim-isic-melanoma-classification/jpeg/train/'+image_id+'.jpg' \n    img = np.array(Image.open(image_file))\n    image_all.append(img)\ngrid_display(image_all, 4, (15,15))","execution_count":null,"outputs":[]},{"metadata":{},"cell_type":"markdown","source":"## Visualiza the skin cancer cafe-au-lait macule...","execution_count":null},{"metadata":{"trusted":true},"cell_type":"code","source":"image_list = train[train['diagnosis'] == 'cafe-au-lait macule'].sample(1)['image_name']\nimage_all=[]\nfor image_id in image_list:\n    image_file = f'/kaggle/input/siim-isic-melanoma-classification/jpeg/train/'+image_id+'.jpg' \n    img = np.array(Image.open(image_file))\n    image_all.append(img)\ngrid_display(image_all, 4, (15,15))","execution_count":null,"outputs":[]},{"metadata":{},"cell_type":"markdown","source":"## Visualiza the skin cancer unknown...","execution_count":null},{"metadata":{"trusted":true},"cell_type":"code","source":"image_list = train[train['diagnosis'] == 'unknown'].sample()['image_name']\nimage_all=[]\nfor image_id in image_list:\n    image_file = f'/kaggle/input/siim-isic-melanoma-classification/jpeg/train/'+image_id+'.jpg' \n    img = np.array(Image.open(image_file))\n    image_all.append(img)\ngrid_display(image_all, 4, (15,15))","execution_count":null,"outputs":[]},{"metadata":{},"cell_type":"markdown","source":"## Skin cancer At different Age Group...","execution_count":null},{"metadata":{"trusted":true},"cell_type":"code","source":"arr = [15.0,20.0,25.0,30.0,35.0,40.0,45.0,50.0,55.0,60.0,65.0,70.0,75.0,80.0,85.0,90.0]\nimage_all=[]\ntitles = ['At Age 15.0','At Age 20.0','At Age 25.0','At Age 30.0','At Age 35.0','At Age 40.0'\n          ,'At Age 45.0','At Age 50.0','At Age 55.0','At Age 60.0','At Age 65.0','At Age 70.0'\n          ,'At Age 75.0','At Age 80.0','At Age 85.0','At Age 90.0']\nfor i in arr:\n    image_list = train[train['age_approx'] == i].sample()['image_name']\n    for image_id in image_list:\n        image_file = f'/kaggle/input/siim-isic-melanoma-classification/jpeg/train/'+image_id+'.jpg' \n        img = np.array(Image.open(image_file))\n        image_all.append(img)\ngrid_display(image_all, 4, (15,15), title = True)","execution_count":null,"outputs":[]},{"metadata":{},"cell_type":"markdown","source":"# Apply some Image Processing...\n\nIn computer science, digital image processing is the use of a digital computer to process digital images through an algorithm. As a subcategory or field of digital signal processing, digital image processing has many advantages over analog image processing.","execution_count":null},{"metadata":{},"cell_type":"markdown","source":"### Use Noise Reduction...\n* Noise means, the pixels in the image show different intensity values instead of true pixel values that are obtained from image. \n* Noise removal algorithm is the process of removing or reducing the noise from the image.\n\n### Use Gaussian Blur...\n* In image processing, a Gaussian blur (also known as Gaussian smoothing) is the result of blurring an image by a Gaussian function (named after mathematician and scientist Carl Friedrich Gauss). \n* It is a widely used effect in graphics software, typically to reduce image noise and reduce detail.\n\n### Adjusted Contrast...\n* To change the contrast or brightness of an image, the Adjust Contrast tool performs contrast stretching. \n* In this process, pixel values below a specified value are mapped to black and pixel values above a specified value are mapped to white.","execution_count":null},{"metadata":{"trusted":true},"cell_type":"code","source":"image_list = train[train['target'] == 1].sample(2)['image_name']\nimage_all=[]\ntitles = ['original', 'Reduced Noise', \"Gaussian Blur\", 'Adjusted Contrast']\nfor image_id in image_list:\n    image_file = f'/kaggle/input/siim-isic-melanoma-classification/jpeg/train/'+image_id+'.jpg'\n    img = cv2.imread(image_file,1)\n    image_all.append(img)\n    #Reducing Noise\n    result = cv2.fastNlMeansDenoisingColored(img,None,20,10,7,21)\n    image_all.append(result)\n    #Gaussian Blur\n    blur_image = cv2.GaussianBlur(img, (7,7), 0)\n    image_all.append(blur_image)\n    #Adjusted contrast\n    contrast_img = cv2.addWeighted(img, 2.5, np.zeros(img.shape, img.dtype), 0, 0)\n    image_all.append(contrast_img)\ngrid_display(image_all, 4, (15,15), title = True)","execution_count":null,"outputs":[]},{"metadata":{},"cell_type":"markdown","source":"### Adaptive Thresholding...\n* Adaptive thresholding is a form of thresholding that takes into account spatial variations in illumination. \n* We present a technique for real-time adaptive thresholding using the integral image of the input.\n\n### Binary Thresholding...\n* Image thresholding is a simple, yet effective, way of partitioning an image into a foreground and background. \n* This image analysis technique is a type of image segmentation that isolates objects by converting grayscale images into binary images.\n* Binary (Bi-valued) Image means, only bi or two intensity values can be used to represent the whole image.\n","execution_count":null},{"metadata":{"trusted":true},"cell_type":"code","source":"image_list = train[train['target'] == 1].sample(2)['image_name']\nimage_all=[]\ntitles = ['original', 'Adaptive thresholding', \"Binary thresholding\"]\nfor image_id in image_list:\n    image_file = f'/kaggle/input/siim-isic-melanoma-classification/jpeg/train/'+image_id+'.jpg'\n    img = cv2.imread(image_file,1)\n    image_all.append(img)\n    #Adaptive Thresholding..\n    gray = cv2.cvtColor(img, cv2.COLOR_RGB2GRAY)\n    thresh1 = cv2.adaptiveThreshold(gray, 255, cv2.ADAPTIVE_THRESH_GAUSSIAN_C, cv2.THRESH_BINARY, 115, 1)\n    image_all.append(thresh1)\n    #Binary Thresholding...\n    hsv = cv2.cvtColor(img, cv2.COLOR_BGR2HSV) \n    res, thresh = cv2.threshold(hsv[:, :, 0], 0, 255, cv2.THRESH_BINARY_INV)\n    image_all.append(thresh)\ngrid_display(image_all, 3, (15,15), title = True)","execution_count":null,"outputs":[]},{"metadata":{},"cell_type":"markdown","source":"## Otsu’s Binarization....\n* In computer vision and image processing, Otsu's method is used to perform automatic image thresholding. \n* In the simplest form, the algorithm returns a single intensity threshold that separate pixels into two classes, foreground and background.","execution_count":null},{"metadata":{"trusted":true},"cell_type":"code","source":"img = cv2.imread('/kaggle/input/siim-isic-melanoma-classification/jpeg/train/ISIC_0052212.jpg', 0)\n# global thresholding\nret1,th1 = cv2.threshold(img,127,255,cv2.THRESH_BINARY)\n\n# Otsu's thresholding\nret2,th2 = cv2.threshold(img,0,255,cv2.THRESH_BINARY+cv2.THRESH_OTSU)\n\n# Otsu's thresholding after Gaussian filtering\nblur = cv2.GaussianBlur(img,(5,5),0)\nret3,th3 = cv2.threshold(blur,0,255,cv2.THRESH_BINARY+cv2.THRESH_OTSU)\n\n# plot all the images and their histograms\nimages = [img, 0, th1,\n          img, 0, th2,\n          blur, 0, th3]\ntitles = ['Original Noisy Image','Histogram','Global Thresholding (v=127)',\n          'Original Noisy Image','Histogram',\"Otsu's Thresholding\",\n          'Gaussian filtered Image','Histogram',\"Otsu's Thresholding\"]\nplt.figure(figsize=(15,10))\nfor i in range(3):\n    plt.subplot(3,3,i*3+1),plt.imshow(images[i*3],'gray')\n    plt.title(titles[i*3]), plt.xticks([]), plt.yticks([])\n    plt.subplot(3,3,i*3+2),plt.hist(images[i*3].ravel(),256)\n    plt.title(titles[i*3+1]), plt.xticks([]), plt.yticks([])\n    plt.subplot(3,3,i*3+3),plt.imshow(images[i*3+2],'gray')\n    plt.title(titles[i*3+2]), plt.xticks([]), plt.yticks([])\nplt.show()","execution_count":null,"outputs":[]},{"metadata":{},"cell_type":"markdown","source":"## Calculating Area and Parameter of cancerous part of cell...","execution_count":null},{"metadata":{"trusted":true},"cell_type":"code","source":"image = []\ntitles = ['Original', 'Thresold Image', 'Contour Image']\nimg = cv2.imread('/kaggle/input/siim-isic-melanoma-classification/jpeg/train/ISIC_0052212.jpg', 0)\nimg = img[200:900, 500:1500]\nimage.append(img)\n#Apply thresholding\nblur = cv2.GaussianBlur(img,(5,5),0)\nret3,th3 = cv2.threshold(blur,0,255,cv2.THRESH_BINARY+cv2.THRESH_OTSU)\nimage.append(th3)\ncontours, hierarcy = cv2.findContours(th3, cv2.RETR_TREE, cv2.CHAIN_APPROX_SIMPLE)\n\nimg2 = img.copy()\nindex = -1\nthickness = 4\ncolor = (255, 0, 255)\n\nobjects = np.zeros([img.shape[0], img.shape[1], 3], 'uint8')\nfor c in contours:\n    cv2.drawContours(objects, [c], -1, color, -1)\n    \n    area = cv2.contourArea(c)\n    perimeter = cv2.arcLength(c, True)\n    \n    M = cv2.moments(c)\n    if M[\"m00\"] != 0:\n        cx = int(M[\"m10\"] / M[\"m00\"])\n        cy = int(M[\"m01\"] / M[\"m00\"])\n    else:\n    # set values as what you need in the situation\n        cx, cy = 0, 0\n    cv2.circle(objects, (cx, cy), 4, (0, 0, 255), -1)\n    \n    print(\"AREA:{}, perimeter:{}\".format(area, perimeter))\n\nimage.append(objects)\ngrid_display(image, 3, (15,15), title = True)","execution_count":null,"outputs":[]},{"metadata":{},"cell_type":"markdown","source":"## Scale Up & Scale Down...\n\n* When scaling a raster graphics image, a new image with a higher or lower number of pixels must be generated. \n* In the case of decreasing the pixel number (scaling down) this usually results in a visible quality loss.\n* In the case of Increasing the pixel number (scaling Up) this usually results in a visible quality Increase.","execution_count":null},{"metadata":{"trusted":true},"cell_type":"code","source":"image_list = train[train['target'] == 1].sample(2)['image_name']\nimage_all=[]\ntitles = ['original', 'Scale Down', \"Scale Up\"]\nfor image_id in image_list:\n    scaleX = 0.6\n    scaleY = 0.6\n    image_file = f'/kaggle/input/siim-isic-melanoma-classification/jpeg/train/'+image_id+'.jpg'\n    img = cv2.imread(image_file,1)\n    image_all.append(img)\n    # Scaling Down the image 0.6 times\n    scaleDown = cv2.resize(img, None, fx= scaleX, fy= scaleY, interpolation= cv2.INTER_LINEAR)\n    image_all.append(scaleDown)\n    # Scaling up the image 1.8 times\n    scaleUp = cv2.resize(img, None, fx= scaleX*3, fy= scaleY*3, interpolation= cv2.INTER_LINEAR)\n    image_all.append(scaleUp)\ngrid_display(image_all, 3, (15,15), title = True)","execution_count":null,"outputs":[]},{"metadata":{},"cell_type":"markdown","source":"## ORB (Oriented FAST and Rotated BRIEF)...\n\nORB is basically a fusion of FAST keypoint detector and BRIEF descriptor with many modifications to enhance the performance. First it use FAST to find keypoints, then apply Harris corner measure to find top N points among them. It also use pyramid to produce multiscale-features.\n\nIt computes the intensity weighted centroid of the patch with located corner at center. The direction of the vector from this corner point to centroid gives the orientation.","execution_count":null},{"metadata":{"trusted":true},"cell_type":"code","source":"image_all=[]\ntitles = ['original', 'ORB Detected', \"Zoom Image\"]\nimg = cv2.imread('/kaggle/input/siim-isic-melanoma-classification/jpeg/train/ISIC_0052212.jpg', 1)\nimage_all.append(img)\n# Initiate ORB detector\norb = cv2.ORB_create()\n# find the keypoints with ORB\nkp = orb.detect(img,None)\n# compute the descriptors with ORB\nkp, des = orb.compute(img, kp)\n# draw only keypoints location,not size and orientation\nimg2 = cv2.drawKeypoints(img, kp, None, color=(0,255,0), flags=0)\nimage_all.append(img2)\nimg3 = img2[350:800,600:1250]\nimage_all.append(img3)\ngrid_display(image_all, 3, (35,35), title = True)","execution_count":null,"outputs":[]},{"metadata":{},"cell_type":"markdown","source":"## Choosing tensorflow Record for model...\n* Data is in [.tfrec] format which is tensorflow record Format.\n* **TensorFlow Record:-** A TFRecord file stores your data as a sequence of binary strings.\n* Importances...\n    * Binary data takes up less space on disk, takes less time to copy and can be read much more efficiently from disk. This is especially true if your data is stored on spinning disks, due to the much lower read/write performance in comparison with SSDs.\n    * Especially for datasets that are too large to be stored fully in memory this is an advantage as only the data that is required at the time (e.g. a batch) is loaded from disk and then processed.\n    * Another major advantage of TFRecords is that it is possible to store sequence data — for instance, a time series or word encodings — in a way that allows for very efficient and (from a coding perspective) convenient import of this type of data.\n* you need to specify the structure of your data before you write it to the file. Tensorflow provides two components for this purpose:\n    * tf.train.Example and\n    * tf.train.SequenceExample.\n* You have to store each sample of your data in one of these structures, then serialize it and use a tf.python_io.TFRecordWriter to write it to disk.","execution_count":null},{"metadata":{},"cell_type":"markdown","source":"## TPU detection...","execution_count":null},{"metadata":{"trusted":true},"cell_type":"code","source":"# Detect hardware\ntry:\n  tpu = tf.distribute.cluster_resolver.TPUClusterResolver() # TPU detection\nexcept ValueError:\n  tpu = None\n#If TPU not found try with GPUs\n  gpus = tf.config.experimental.list_logical_devices(\"GPU\")\n    \n# Select appropriate distribution strategy for hardware\nif tpu:\n  tf.config.experimental_connect_to_cluster(tpu)\n  tf.tpu.experimental.initialize_tpu_system(tpu)\n  strategy = tf.distribute.experimental.TPUStrategy(tpu)\n  print('Running on TPU ', tpu.master())  \nelif len(gpus) > 0:\n  strategy = tf.distribute.MirroredStrategy(gpus) # this works for 1 to multiple GPUs\n  print('Running on ', len(gpus), ' GPU(s) ')\nelse:\n  strategy = tf.distribute.get_strategy()\n  print('Running on CPU')\n\n# How many accelerators do we have ?\nprint(\"Number of accelerators: \", strategy.num_replicas_in_sync)","execution_count":null,"outputs":[]},{"metadata":{"trusted":true},"cell_type":"code","source":"GCS_DS_PATH = KaggleDatasets().get_gcs_path('siim-isic-melanoma-classification')","execution_count":null,"outputs":[]},{"metadata":{},"cell_type":"markdown","source":"## Intialize the Value...","execution_count":null},{"metadata":{"trusted":true},"cell_type":"code","source":"TRAINING_FILENAMES = tf.io.gfile.glob(GCS_DS_PATH + '/tfrecords/train*')\nTEST_FILENAMES = tf.io.gfile.glob(GCS_DS_PATH + '/tfrecords/test*')\nBATCH_SIZE = 10 * strategy.num_replicas_in_sync\nIMAGE_SIZE = [1024, 1024]\nAUTO = tf.data.experimental.AUTOTUNE\nimSize = 1024\nEPOCHS = 10\n\nVALIDATION_SPLIT = 0.18\nsplit = int(len(TRAINING_FILENAMES) * VALIDATION_SPLIT)\ntraining_filenames = TRAINING_FILENAMES[split:]\nvalidation_filenames = TRAINING_FILENAMES[:split]\nprint(\"Pattern matches {} data files. Splitting dataset into {} training files and {} validation files\"\n      .format(len(TRAINING_FILENAMES), len(training_filenames), len(validation_filenames)))\nTRAINING_FILENAMES = training_filenames","execution_count":null,"outputs":[]},{"metadata":{},"cell_type":"markdown","source":"# Reading Tensorflow Record...","execution_count":null},{"metadata":{"trusted":true},"cell_type":"code","source":"def read_labeled_tfrecord(example):\n    features = {\n        \"image\": tf.io.FixedLenFeature([], tf.string), # tf.string means bytestring\n        \"target\": tf.io.FixedLenFeature([], tf.int64),  # shape [] means single element\n    }\n    example = tf.io.parse_single_example(example, features)\n    image = tf.image.decode_jpeg(example['image'], channels=3)\n    image = tf.cast(image, tf.float32) / 255.0  # convert image to floats in [0, 1] range\n    image = tf.reshape(image, [*IMAGE_SIZE, 3]) # explicit size needed for TPU\n    image = tf.image.resize(image, [imSize,imSize])\n    label = tf.cast(example['target'], tf.int32)\n    return image, label \n\ndef read_unlabeled_tfrecord(example):\n    u_features = {\n        \"image\": tf.io.FixedLenFeature([], tf.string), # tf.string means bytestring\n        \"image_name\": tf.io.FixedLenFeature([], tf.string),  # shape [] means single element\n    }\n    example = tf.io.parse_single_example(example, u_features)\n    image = tf.image.decode_jpeg(example['image'], channels=3)\n    image = tf.cast(image, tf.float32) / 255.0  # convert image to floats in [0, 1] range\n    image = tf.reshape(image, [*IMAGE_SIZE, 3]) # explicit size needed for TPU\n    image = tf.image.resize(image, [imSize,imSize])\n    idnum = example['image_name']\n    return image, idnum # returns a dataset of image(s)\n\ndef load_dataset(filenames, labeled=True, ordered=False):\n    ignore_order = tf.data.Options()\n    if not ordered:\n        ignore_order.experimental_deterministic = False # disable order, increase speed\n\n    dataset = tf.data.TFRecordDataset(filenames, num_parallel_reads=AUTO) # automatically interleaves reads from multiple files\n    dataset = dataset.with_options(ignore_order) # uses data as soon as it streams in, rather than in its original order\n    dataset = dataset.map(read_labeled_tfrecord if labeled else read_unlabeled_tfrecord, num_parallel_calls=AUTO)\n    # returns a dataset of (image, label) pairs if labeled=True or (image, id) pairs if labeled=False\n    return dataset","execution_count":null,"outputs":[]},{"metadata":{"trusted":true},"cell_type":"code","source":"def data_augment(image, label):\n    image = tf.image.random_flip_left_right(image)\n    image = tf.image.random_flip_up_down(image)\n    #image = tf.image.random_brightness(x, 0.2)\n    #image = cutmix(image, label)\n    return image, label   \n\ndef get_training_dataset(dataset, do_aug=True):\n    dataset = load_dataset(TRAINING_FILENAMES, labeled=True)\n    dataset = dataset.map(data_augment, num_parallel_calls=AUTO)\n    dataset = dataset.repeat() # the training dataset must repeat for several epochs\n    dataset = dataset.shuffle(2048)\n    dataset = dataset.batch(BATCH_SIZE)\n    dataset = dataset.prefetch(AUTO) # prefetch next batch while training (autotune prefetch buffer size)\n    return dataset\n\ndef get_validation_dataset(filenames, train=False):\n    dataset = load_dataset(filenames, labeled=True)\n    dataset = dataset.cache() # This dataset fits in RAM\n    if train:\n    # Best practices for Keras:\n    # Training dataset: repeat then batch\n    # Evaluation dataset: do not repeat\n        dataset = dataset.repeat()\n        dataset = dataset.map(data_augment, num_parallel_calls=AUTO)\n        dataset = dataset.shuffle(2000)\n    dataset = dataset.batch(BATCH_SIZE)\n    dataset = dataset.prefetch(AUTO)\n    return dataset\n    \ndef get_test_dataset(dataset, ordered=False):\n    dataset = load_dataset(dataset, labeled=False, ordered=ordered)\n    dataset = dataset.batch(BATCH_SIZE)\n    dataset = dataset.prefetch(AUTO) # prefetch next batch while training (autotune prefetch buffer size)\n    return dataset\n\ndef count_data_items(filenames):\n    # the number of data items is written in the name of the .tfrec files, i.e. flowers00-230.tfrec = 230 data items\n    n = [int(re.compile(r\"-([0-9]*)\\.\").search(filename).group(1)) for filename in filenames]\n    return np.sum(n)\n\nvalidation_dataset = get_validation_dataset(validation_filenames, train=False)\ntraining_dataset = get_training_dataset(TRAINING_FILENAMES)\ntest_dataset = get_test_dataset(TEST_FILENAMES)\nNUM_TRAINING_IMAGES = count_data_items(TRAINING_FILENAMES)\nNUM_TEST_IMAGES = count_data_items(TEST_FILENAMES)\nNUM_VALID_IMAGES = count_data_items(validation_filenames)\nvalidation_steps = NUM_VALID_IMAGES // BATCH_SIZE\nSTEPS_PER_EPOCH = NUM_TRAINING_IMAGES // BATCH_SIZE\nprint('Dataset: {} training images, {} unlabeled test images, {} validition images'\n      .format(NUM_TRAINING_IMAGES, NUM_TEST_IMAGES, NUM_VALID_IMAGES))","execution_count":null,"outputs":[]},{"metadata":{"trusted":true},"cell_type":"markdown","source":"## Apply Some Image Augmentation Technique...\n### <font color='red'>I strongly recommend to Read my kernal on Image Augmentation for Detail understanding.<font>[click here](https://www.kaggle.com/saife245/cutmix-vs-mixup-vs-gridmask-vs-cutout/notebook#MixUp-data-augmentation)","execution_count":null},{"metadata":{},"cell_type":"markdown","source":"## Cutout data augmentation...\nCutout is a simple regularization technique for convolutional neural networks that involves removing contiguous sections of input images, effectively augmenting the dataset with partially occluded versions of existing samples.","execution_count":null},{"metadata":{"trusted":true},"cell_type":"code","source":"def get_random_eraser(input_img,p=0.5, s_l=0.02, s_h=0.4, r_1=0.3, r_2=1/0.3, v_l=0, v_h=255, pixel_level=False):\n   # def eraser(input_img):\n    img_h, img_w, img_c = input_img.shape\n\n    while True:\n        s = np.random.uniform(s_l, s_h) * img_h * img_w\n        r = np.random.uniform(r_1, r_2)\n        w = int(np.sqrt(s / r))\n        h = int(np.sqrt(s * r))\n        left = np.random.randint(0, img_w)\n        top = np.random.randint(0, img_h)\n\n        if left + w <= img_w and top + h <= img_h:\n            break\n\n    if pixel_level:\n        c = np.random.uniform(v_l, v_h, (h, w, img_c))\n    else:\n        c = np.random.uniform(v_l, v_h)\n\n    input_img[top:top + h, left:left + w, :] = c\n\n    return input_img","execution_count":null,"outputs":[]},{"metadata":{"trusted":true},"cell_type":"code","source":"TRAIN = '/kaggle/input/siim-isic-melanoma-classification/jpeg/train/'\nIMAGE_SIZE = 1024\nn_imgs = 12\nimg_filenames = os.listdir(TRAIN)[:n_imgs]\nimg_filenames[:3]\nimage=[]\nfor file_name in img_filenames:\n    img = cv2.imread(TRAIN +file_name)\n    img = get_random_eraser(img)\n    image.append(img)\ngrid_display(image, 4, (15,15))","execution_count":null,"outputs":[]},{"metadata":{},"cell_type":"markdown","source":"## CutMix data augmentation\nCutMix augmentation strategy: patches are cut and pasted among training images where the ground truth labels are also mixed proportionally to the area of the patches. By making efficient use of training pixels and retaining the regularization effect of regional dropout, CutMix consistently outperforms the state-of-the-art augmentation strategies on CIFAR and ImageNet classification tasks, as well as on the ImageNet weakly-supervised localization task. CutMix improves the model robustness against input corruptions and its out-of-distribution detection performances.","execution_count":null},{"metadata":{"trusted":true},"cell_type":"code","source":"# if you have label in images\ndef onehot(image,label):\n    CLASSES = 2 # Define number of classes our model have\n    return image,tf.one_hot(label,CLASSES)\n\ndef cutmix(image, label): #, PROBABILITY = 1.0\n    # input image - is a batch of images of size [n,dim,dim,3] not a single image of [dim,dim,3]\n    # output - a batch of images with cutmix applied\n    DIM = 1024 #IMAGE_SIZE[0]\n    CLASSES = 2\n    \n    imgs = []; labs = []\n    for j in range(AUG_BATCH):\n        # CHOOSE RANDOM IMAGE TO CUTMIX WITH\n        k = tf.cast( tf.random.uniform([],0,AUG_BATCH),tf.int32)\n        # CHOOSE RANDOM LOCATION\n        x = tf.cast( tf.random.uniform([],0,DIM),tf.int32)\n        y = tf.cast( tf.random.uniform([],0,DIM),tf.int32)\n        b = tf.random.uniform([],0,1) # this is beta dist with alpha=1.0\n        WIDTH = tf.cast( DIM * tf.math.sqrt(1-b),tf.int32)\n        ya = tf.math.maximum(0,y-WIDTH//2)\n        yb = tf.math.minimum(DIM,y+WIDTH//2)\n        xa = tf.math.maximum(0,x-WIDTH//2)\n        xb = tf.math.minimum(DIM,x+WIDTH//2)\n        # MAKE CUTMIX IMAGE\n        one = image[j,ya:yb,0:xa,:]\n        two = image[k,ya:yb,xa:xb,:]\n        three = image[j,ya:yb,xb:DIM,:]\n        middle = tf.concat([one,two,three],axis=1)\n        img = tf.concat([image[j,0:ya,:,:],middle,image[j,yb:DIM,:,:]],axis=0)\n        imgs.append(img)\n        # MAKE CUTMIX LABEL\n        a = tf.cast(WIDTH*WIDTH/DIM/DIM,tf.float32)\n        if len(label.shape)==1:\n            lab1 = tf.one_hot(label[j],CLASSES)\n            lab2 = tf.one_hot(label[k],CLASSES)\n        else:\n            lab1 = label[j,]\n            lab2 = label[k,]\n        labs.append((1-a)*lab1 + a*lab2)\n            \n    # RESHAPE HACK SO TPU COMPILER KNOWS SHAPE OF OUTPUT TENSOR (maybe use Python typing instead?)\n    image2 = tf.reshape(tf.stack(imgs),(AUG_BATCH,DIM,DIM,3))\n    label2 = tf.reshape(tf.stack(labs),(AUG_BATCH,CLASSES))\n    return image2,label2","execution_count":null,"outputs":[]},{"metadata":{"trusted":true},"cell_type":"code","source":"AUG_BATCH = 48\nrow = 6; col = 4;\nrow = min(row,AUG_BATCH//col)\nall_elements = training_dataset.unbatch()\naugmented_element = all_elements.repeat().batch(AUG_BATCH).map(cutmix)\n\nfor (img,label) in augmented_element:\n    plt.figure(figsize=(15,int(15*row/col)))\n    for j in range(row*col):\n        plt.subplot(row,col,j+1)\n        plt.axis('off')\n        plt.imshow(img[j,])\n    plt.show()\n    break","execution_count":null,"outputs":[]},{"metadata":{},"cell_type":"markdown","source":"## GridMask data augmentation\nGridMask is belong to Information dropping method. Information dropping might help improving model generalization through enforcing model to learn on remain information. But keeping the deletion and reservation region in a balance relation is needed. Too much information dropping might result in under-fitting, but too few might result in over-fitting.","execution_count":null},{"metadata":{"trusted":true},"cell_type":"code","source":"def transform(image, inv_mat, image_shape):\n    h, w, c = image_shape\n    cx, cy = w//2, h//2\n    new_xs = tf.repeat( tf.range(-cx, cx, 1), h)\n    new_ys = tf.tile( tf.range(-cy, cy, 1), [w])\n    new_zs = tf.ones([h*w], dtype=tf.int32)\n    old_coords = tf.matmul(inv_mat, tf.cast(tf.stack([new_xs, new_ys, new_zs]), tf.float32))\n    old_coords_x, old_coords_y = tf.round(old_coords[0, :] + w//2), tf.round(old_coords[1, :] + h//2)\n    clip_mask_x = tf.logical_or(old_coords_x<0, old_coords_x>w-1)\n    clip_mask_y = tf.logical_or(old_coords_y<0, old_coords_y>h-1)\n    clip_mask = tf.logical_or(clip_mask_x, clip_mask_y)\n    old_coords_x = tf.boolean_mask(old_coords_x, tf.logical_not(clip_mask))\n    old_coords_y = tf.boolean_mask(old_coords_y, tf.logical_not(clip_mask))\n    new_coords_x = tf.boolean_mask(new_xs+cx, tf.logical_not(clip_mask))\n    new_coords_y = tf.boolean_mask(new_ys+cy, tf.logical_not(clip_mask))\n    old_coords = tf.cast(tf.stack([old_coords_y, old_coords_x]), tf.int32)\n    new_coords = tf.cast(tf.stack([new_coords_y, new_coords_x]), tf.int64)\n    rotated_image_values = tf.gather_nd(image, tf.transpose(old_coords))\n    rotated_image_channel = list()\n    for i in range(c):\n        vals = rotated_image_values[:,i]\n        sparse_channel = tf.SparseTensor(tf.transpose(new_coords), vals, [h, w])\n        rotated_image_channel.append(tf.sparse.to_dense(sparse_channel, default_value=0, validate_indices=False))\n    return tf.transpose(tf.stack(rotated_image_channel), [1,2,0])\n\ndef random_rotate(image, angle, image_shape):\n    def get_rotation_mat_inv(angle):\n        # transform to radian\n        angle = math.pi * angle / 180\n        cos_val = tf.math.cos(angle)\n        sin_val = tf.math.sin(angle)\n        one = tf.constant([1], tf.float32)\n        zero = tf.constant([0], tf.float32)\n        rot_mat_inv = tf.concat([cos_val, sin_val, zero, -sin_val, cos_val, zero, zero, zero, one], axis=0)\n        rot_mat_inv = tf.reshape(rot_mat_inv, [3,3])\n        return rot_mat_inv\n    angle = float(angle) * tf.random.normal([1],dtype='float32')\n    rot_mat_inv = get_rotation_mat_inv(angle)\n    return transform(image, rot_mat_inv, image_shape)\n\n\ndef GridMask(image_height, image_width, d1, d2, rotate_angle=1, ratio=0.5):\n    h, w = image_height, image_width\n    hh = int(np.ceil(np.sqrt(h*h+w*w)))\n    hh = hh+1 if hh%2==1 else hh\n    d = tf.random.uniform(shape=[], minval=d1, maxval=d2, dtype=tf.int32)\n    l = tf.cast(tf.cast(d,tf.float32)*ratio+0.5, tf.int32)\n\n    st_h = tf.random.uniform(shape=[], minval=0, maxval=d, dtype=tf.int32)\n    st_w = tf.random.uniform(shape=[], minval=0, maxval=d, dtype=tf.int32)\n\n    y_ranges = tf.range(-1 * d + st_h, -1 * d + st_h + l)\n    x_ranges = tf.range(-1 * d + st_w, -1 * d + st_w + l)\n\n    for i in range(0, hh//d+1):\n        s1 = i * d + st_h\n        s2 = i * d + st_w\n        y_ranges = tf.concat([y_ranges, tf.range(s1,s1+l)], axis=0)\n        x_ranges = tf.concat([x_ranges, tf.range(s2,s2+l)], axis=0)\n\n    x_clip_mask = tf.logical_or(x_ranges < 0 , x_ranges > hh-1)\n    y_clip_mask = tf.logical_or(y_ranges < 0 , y_ranges > hh-1)\n    clip_mask = tf.logical_or(x_clip_mask, y_clip_mask)\n\n    x_ranges = tf.boolean_mask(x_ranges, tf.logical_not(clip_mask))\n    y_ranges = tf.boolean_mask(y_ranges, tf.logical_not(clip_mask))\n\n    hh_ranges = tf.tile(tf.range(0,hh), [tf.cast(tf.reduce_sum(tf.ones_like(x_ranges)), tf.int32)])\n    x_ranges = tf.repeat(x_ranges, hh)\n    y_ranges = tf.repeat(y_ranges, hh)\n\n    y_hh_indices = tf.transpose(tf.stack([y_ranges, hh_ranges]))\n    x_hh_indices = tf.transpose(tf.stack([hh_ranges, x_ranges]))\n\n    y_mask_sparse = tf.SparseTensor(tf.cast(y_hh_indices, tf.int64),  tf.zeros_like(y_ranges), [hh, hh])\n    y_mask = tf.sparse.to_dense(y_mask_sparse, 1, False)\n\n    x_mask_sparse = tf.SparseTensor(tf.cast(x_hh_indices, tf.int64), tf.zeros_like(x_ranges), [hh, hh])\n    x_mask = tf.sparse.to_dense(x_mask_sparse, 1, False)\n\n    mask = tf.expand_dims( tf.clip_by_value(x_mask + y_mask, 0, 1), axis=-1)\n\n    mask = random_rotate(mask, rotate_angle, [hh, hh, 1])\n    mask = tf.image.crop_to_bounding_box(mask, (hh-h)//2, (hh-w)//2, image_height, image_width)\n\n    return mask\n\ndef apply_grid_mask(image, image_shape):\n    AugParams = {\n        'd1' : 100,\n        'd2': 160,\n        'rotate' : 45,\n        'ratio' : 0.3\n    }\n    mask = GridMask(image_shape[0], image_shape[1], AugParams['d1'], AugParams['d2'], AugParams['rotate'], AugParams['ratio'])\n    if image_shape[-1] == 3:\n        mask = tf.concat([mask, mask, mask], axis=-1)\n    return image * tf.cast(mask,tf.float32)\n\ndef gridmask(img_batch, label_batch):\n    return apply_grid_mask(img_batch, (1024,1024, 3)), label_batch","execution_count":null,"outputs":[]},{"metadata":{"trusted":true},"cell_type":"code","source":"AUG_BATCH = 48\nrow = 6; col = 4;\nrow = min(row,AUG_BATCH//col)\nall_elements = training_dataset.unbatch()\naugmented_element = all_elements.repeat().batch(AUG_BATCH).map(gridmask)\n\nfor (img,label) in augmented_element:\n    plt.figure(figsize=(15,int(15*row/col)))\n    for j in range(row*col):\n        plt.subplot(row,col,j+1)\n        plt.axis('off')\n        plt.imshow(img[j,])\n    plt.show()\n    break","execution_count":null,"outputs":[]},{"metadata":{},"cell_type":"markdown","source":"## Data shape...","execution_count":null},{"metadata":{"trusted":true},"cell_type":"code","source":"# data dump\nprint(\"Training data shapes:\")\nfor image, label in training_dataset.take(3):\n    print(image.numpy().shape, label.numpy().shape)\nprint(\"Training data label examples:\", label.numpy())\n\nprint(\"Validation data shapes:\")\nfor image, label in validation_dataset.take(3):\n    print(image.numpy().shape, label.numpy().shape)\nprint(\"Validation data label examples:\", label.numpy())\n\nprint(\"Test data shapes:\")\nfor image, idnum in test_dataset.take(3):\n    print(image.numpy().shape, idnum.numpy().shape)\nprint(\"Test data IDs:\", idnum.numpy().astype('U'))","execution_count":null,"outputs":[]},{"metadata":{},"cell_type":"markdown","source":"# Model","execution_count":null},{"metadata":{"trusted":true},"cell_type":"code","source":"# with strategy.scope():\n#     model = tf.keras.Sequential([\n#         dense.DenseNet121(\n#             input_shape=(imSize, imSize, 3),\n#             weights='imagenet',\n#             include_top=False\n#         ),\n#         layers.GlobalAveragePooling2D(),\n#         layers.Dense(1, activation='sigmoid')\n#     ])\n        \n#     model.compile(\n#         optimizer='adam',\n#         loss = 'binary_crossentropy',\n#         metrics=['accuracy']\n#     )\n#     model.summary()","execution_count":null,"outputs":[]},{"metadata":{"trusted":true},"cell_type":"code","source":"import tensorflow.keras.applications.xception as xcep\nwith strategy.scope():\n    model = tf.keras.Sequential([\n        xcep.Xception(\n            input_shape=(imSize, imSize, 3),\n            weights='imagenet',\n            include_top=False\n        ),\n        layers.GlobalAveragePooling2D(),\n        layers.Dense(1024, activation= 'relu'), \n        layers.Dropout(0.2),\n        layers.Dense(512, activation= 'relu'), \n        layers.Dropout(0.2), \n        layers.Dense(256, activation='relu'), \n        layers.Dropout(0.2), \n        layers.Dense(128, activation='relu'), \n        layers.Dropout(0.1),\n        layers.Dense(64, activation='relu'), \n        layers.Dropout(0.1),\n        layers.Dense(1, activation='sigmoid')\n    ])\n        \n    model.compile(\n        optimizer='adam',\n        loss = 'binary_crossentropy',\n        metrics=['accuracy']\n    )\n    model.summary()","execution_count":null,"outputs":[]},{"metadata":{"trusted":true},"cell_type":"code","source":"# !pip install -q efficientnet","execution_count":null,"outputs":[]},{"metadata":{"trusted":true},"cell_type":"code","source":"# import efficientnet.tfkeras as efn\n# with strategy.scope():\n#     model = tf.keras.Sequential([\n#         efn.EfficientNetB5(\n#             input_shape=(imSize, imSize, 3),\n#             weights='imagenet',\n#             include_top=False\n#         ),\n#         layers.GlobalAveragePooling2D(),\n#         layers.Dense(512, activation= 'relu'), \n#         layers.Dropout(0.2), \n#         layers.Dense(256, activation='relu'), \n#         layers.Dropout(0.2), \n#         layers.Dense(128, activation='relu'), \n#         layers.Dropout(0.1),\n#         layers.Dense(64, activation='relu'), \n#         layers.Dropout(0.1),\n#         layers.Dense(1, activation='sigmoid')\n#     ])\n        \n#     model.compile(\n#         optimizer='adam',\n#         loss = 'binary_crossentropy',\n#         metrics=['accuracy']\n#     )\n#     model.summary()","execution_count":null,"outputs":[]},{"metadata":{},"cell_type":"markdown","source":"# Training","execution_count":null},{"metadata":{"trusted":true},"cell_type":"code","source":"def lrfn(epoch):\n    LR_START = 0.00001\n    LR_MAX = 0.00005 * strategy.num_replicas_in_sync\n    LR_MIN = 0.00001\n    LR_RAMPUP_EPOCHS = 5\n    LR_SUSTAIN_EPOCHS = 0\n    LR_EXP_DECAY = .8\n    \n    if epoch < LR_RAMPUP_EPOCHS:\n        lr = (LR_MAX - LR_START) / LR_RAMPUP_EPOCHS * epoch + LR_START\n    elif epoch < LR_RAMPUP_EPOCHS + LR_SUSTAIN_EPOCHS:\n        lr = LR_MAX\n    else:\n        lr = (LR_MAX - LR_MIN) * LR_EXP_DECAY**(epoch - LR_RAMPUP_EPOCHS - LR_SUSTAIN_EPOCHS) + LR_MIN\n    return lr\n\nlr_schedule = tf.keras.callbacks.LearningRateScheduler(lrfn, verbose=1)\n","execution_count":null,"outputs":[]},{"metadata":{"trusted":true},"cell_type":"code","source":"EPOCHS = 10\nhistory = model.fit(training_dataset, steps_per_epoch=STEPS_PER_EPOCH, epochs=EPOCHS,\n                    validation_data=validation_dataset,callbacks=[lr_schedule])","execution_count":null,"outputs":[]},{"metadata":{},"cell_type":"markdown","source":"## Visualizing training Curve...","execution_count":null},{"metadata":{"trusted":true},"cell_type":"code","source":"display_training_curves(history.history['accuracy'], history.history['val_accuracy'], 'accuracy', 211)\ndisplay_training_curves(history.history['loss'], history.history['val_loss'], 'loss', 212)","execution_count":null,"outputs":[]},{"metadata":{},"cell_type":"markdown","source":"## Some other model performance...\n* some of the previous work on melanoma detection and model performance.\n![accuracy.jpg](attachment:accuracy.jpg)","attachments":{"accuracy.jpg":{"image/jpeg":"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"}},"execution_count":null},{"metadata":{},"cell_type":"markdown","source":"# Making Prediction...","execution_count":null},{"metadata":{"trusted":true},"cell_type":"code","source":"test_ds = test_dataset#get_test_dataset(ordered=True)\n\nprint('Computing predictions...')\ntest_images_ds = test_ds.map(lambda image, idnum: image)\nprobabilities = model.predict(test_images_ds).flatten()\nprint(probabilities)\n\nprint('Generating submission.csv file...')\ntest_ids_ds = test_ds.map(lambda image, idnum: idnum).unbatch()\ntest_ids = next(iter(test_ids_ds.batch(NUM_TEST_IMAGES))).numpy().astype('U') # all in one batch\nnp.savetxt('submission.csv', np.rec.fromarrays([test_ids, probabilities]), fmt=['%s', '%f'],\n           delimiter=',', header='image_name,target', comments='')\n","execution_count":null,"outputs":[]},{"metadata":{},"cell_type":"markdown","source":"## Creating Submission...","execution_count":null},{"metadata":{"trusted":true},"cell_type":"code","source":"sub = pd.read_csv(\"submission.csv\")\nsub.head()","execution_count":null,"outputs":[]},{"metadata":{"trusted":true},"cell_type":"code","source":"sub['target'].hist()","execution_count":null,"outputs":[]},{"metadata":{},"cell_type":"markdown","source":"## What next...\n* Try to use Image Augmentation for model Building like Cutmix, Mixup, Gridmask etc...\n* Try to use Model like Squeezenet, Inception_V3 etc...\n* Try to improve the model performance.\n    * may also try some machine learning model.\n    * Try Gridsearchcv\n    * use ensembales of models.\n    * use of ensembales weights of correlations.\n* And What all I learn in this competition.","execution_count":null},{"metadata":{},"cell_type":"markdown","source":"# End Note...\n\nThis notebook is work in progress.And I try my level best to explain each and every thing as I learn in this competition. And I try to update this kernal as i learn new thing in this.\n\nYaa... I know Kaggle is too busy in Organising new Competation, But Where We have to Go ... It's LockDown so **keep Kaggling.....**\n\n### <font color='blue'>I hope you find this kernel useful and enjoyable, If so Please upvote it. And Your comments and feedback are most welcome. ;-)<font>\n    \n### <font color='red'>STAY TUNED!!!<font>","execution_count":null}],"metadata":{"kernelspec":{"language":"python","display_name":"Python 3","name":"python3"},"language_info":{"pygments_lexer":"ipython3","nbconvert_exporter":"python","version":"3.6.4","file_extension":".py","codemirror_mode":{"name":"ipython","version":3},"name":"python","mimetype":"text/x-python"}},"nbformat":4,"nbformat_minor":4}