Giter Site home page Giter Site logo

melanoma-detection-api's Introduction

Melanoma Detection Tool : REST APIs

Technologies & Libraries Used

Python 3.9
Flask framework 
scikit-learn==1.0
numpy
pandas
gunicorn
flask_cors
opencv-python-headless==4.5.5.64
FuzzyWuzzy
strsimpy==0.2.1

How to set up and run

Create virtual environment
Windows
py -3 -m venv <name of environment>
Linux/MaxOS
python3 -m venv <name of environment>
Activate virtual environment
Windows
<name of environment>\Scripts\activate
Linux/MaxOS
. <name of environment>/bin/activate
Install required libraries
pip3 install -r requirements.txt
Run app locally
flask run

Special Notes

  • Use Python 3.9 and scikit-learn==1.0
  • If any new library requires to install, after install freeze it to the requirements.txt
  • add your virtual environment directory to .gitignore

Rest Api Documentation

Melanoma detection using PPS

Method: POST
End point: https://melanoma-detection-tool-api.herokuapp.com/predict-melanoma/pps
Request body format: JSON
Required params in request body: age, gene, tumor, tier, mutated dna

Example request body

  { 
     "age" : 45, 
     "gene" : "MUC16",
     "tumor" : "metastasis",
     "tier" : 1,
     "mutated_dna" : "ATGCTGAAACCCTCAGGCCTTCCTGGGTCATCTTCTCCCACCCGCTCCTTGATGACAGGGAGCAGGAGCACTAAAGCCACACCAGAAATGGATTCAGGACTGACAGGAGCCACCTTGTCACCTAAGACATCTACAGGTGCAATCGTGGTGACAGAACATACTCTGCCCTTTACTTCCCCAGATAAGACCTTGGCCAGTCCTACATCTTCGGTTGTGGGAAGAACCACCCAGTCTTTGGGGGTGATGTCCTCTGCTCTCCCTGAGTCAACCTCTAGAGGAATGACACACTCCGAGCAAAGAACCAGCCCATCGCTGAGTCCCCAGGTCAATGAAACTCCCTCTAGGAACTACCCTGCTACAAGCATGGTTTCAGGATTGAGTTCCCCAAGGACCAGGACCAGTTCCACAGAAGGAAATTTTACCAAAGAAGCATCTACATACACACTCACTGTAGAGACCACAAGTGGCCCAGTCACTGAGAAGTACACAGTCCCCACTGAGACCTCAACAACTGAAGGTGACAGCACAGAGACCCCCTGGGACACAAGATATATTCCTGTAAAAATCACATCTCCAATGAAAACATTTGCAGATTCAACTGCATCCAAGGAAAATGCCCCAGTGTCTATGACTCCAGCTGAGACCACAGTTACTGACTCACATACTCCAGGAAGGACAAACCCATCATTTGGGACACTTTATTCTTCCTTCCTTGACCTATCACCTAAAGGGACCCCAAATTCCAGAGGTGAAACAAGCCTGGAACTGATTCTATCAACCACTGGATATCCCTTCTCCTCTCCTGAACCTGGCTCTGCAGGACACAGCAGAATAAGTACCAGTGCGCCTTTGTCATCATCTGCTTCAGTTCTCGATAATAAAATATCAGAGACCAGCATATTCTCAGGCCAGAGTCTCACCTCCCCTCTGTCTCCTGGGGTGCCCGAGGCCAGAGCCAGCACAATGCCCAACTCAGCTATCCCTTTTTCCATGACACTAAGCAATGCAGAAACAAGTGCCGAAAGGGTCAGAAGCACAATTTCCTCTCTGGGGACTCCATCAATATCCACAAAGCAGACAGCAGAGACTATCCTTACCTTCCATGCCTTCGCTGAGACCATGGATATACCCAGCACCCACATAGCCAAGACTTTGGCTTCAGAATGGTTGGGAAGTCCAGGTACCCTTGGTGGCACCAGCACTTCAGCGCTGACAACCACATCTCCATCTACCACTTTAGTCTCAGAGGAGACCAACACCCATCACTCCACGAGTGGAAAGGAAACAGAAGGAACTTTGAATACATCTATGACTCCACTTGAGACCTCTGCTCCTGGAGAAGAGTCCGAAATGACTGCCACCTTGGTCCCCACTCTAGGTTTTACAACTCTTGACAGCAAGATCAGAAGTCCATCTCAGGTCTCTTCATCCCACCCAACAAGAGAGCTCAGAACCACAGGCAGCACCTCTGGGAGGCAGAGTTCCAGCACAGCTGCCCACGGGAGCTCTGACATCCTGAGGGCAACCACTTCCAGCACCTCAAAAGCATCATCATGGACCAGTGAAAGCACAGCTCAGCAATTTAGTGAACCCCAGCACACACAGTGGGTGGAGACAAGTCCTAGCATGAAAACAGAGAGACCCCCAGCATCAACCAGTGTGGCAGCCCCTATCACCACTTCTGTTCCCTCAGTGGTCTCTGGCTTCACCACCCTGAAGACCAGCTCCACAAAAGGGATTTGGCTTGAAGAAACATCTGCAGACACACTCATCGGAGAATCCACAGCTGGCCCAACCACCCATCAGTTTGCTGTTCCCACTGGGATTTCAATGACAGGAGGCAGCAGCACCAGGGGAAGCCAGGGCACAACCCACCTACTCACCAGAGCCACAGCATCATCTGAGACATCCGCAGATTTGACTCTGGCCACGAACGGTGTCCCAGTCTCCGTGTCTCCAGCAGTGAGCAAGACGGCTGCTGGCTCAAGTCCTCCAGGAGGGACAAAGCCATCATATACAATGGTTTCTTCTGTCATCCCTGAGACATCATCTCTACAGTCCTCAGCTTTCAGGGAAGGAACCAGCCTGGGACTGACTCCATTAAACACTAGACATCCCTTCTCTTCCCCTGAACCAGACTCTGCAGGACACACCAAGATAAGCACCAGCATTCCTCTGTTGTCATCTGCTTCAGTTCTTGAGGATAAAGTGTCAGCGACCAGCACATTCTCACACCACAAAGCCACCTCATCTATTACCACAGGGACTCCTGAAATCTCAACAAAGACAAAGCCCAGCTCAGCCGTTCTTTCCTCCATGACCCTAAGCAATGCAGCAACAAGTCCTGAAAGAGTCAGAAATGCAACTTCCCCTCTGACTCATCCATCTCCATCAGGGGAAGAGACAGCAGGGAGTGTCCTCACTCTCAGCACCTCTGCTGAGACTACAGACTCACCTAACATCCACCCAACTGGGACACTGACTTCAGAATCGTCAGAGAGTCCTAGCACTCTCAGCCTCCCAAGTGTCTCTGGAGTCAAAACCACATTTTCTTCATCTACTCCTTCCACTCATCTATTTACTAGTGGAGAAGAAACAGAGGAAACTTCGAATCCATCTGTGTCTCAACCTGAGACTTCTGTTTCCAGAGTAAGGACCACCTTGGCCAGCACCTCTGTCCCTACCCCAGTATTCCCCACCATGGACACCTGGCCTACACGTTCAGCTCAGTTCTCTTCATCCCACCTAGTGAGTGAGCTCAGAGCTACGAGCAGTACCTCAGTTACAAACTCAACTGGTTCAGCTCTTCCTAAAATATCTCACCTCACTGGGACGGCAACAATGTCACAGACCAATAGAGACACGTTTAATGACTCTGCTGCACCCCAAAGCACAACTTGGCCAGAGACTAGTCCCAGATTCAAGACAGGGTTACCTTCAGCAACAACCACTGTTTCAACCTCTGCCACTTCTCTCTCTGCTACTGTAATGGTCTCTAAATTCACTTCTCCAGCAACTAGTTCCATGGAAGCAACTTCTATCAGGGAACCATCAACAACCATCCTCACAACAGAGACCACGAATGGCCCAGGCTCTATGGCTGTGGCTTCTACCAACATCCCAATTGGAAAGGGCTACATTACTGAAGGAAGATTGGACACAAGCCATCTGCCCATTGGAACCACAGCTTCCTCTGAGACATCTATGGATTTTACCATGGCCAAAGAAAGTGTCTCAATGTCAGTATCTCCATCTCAGTCCATGGATGCTGCTGGCTCAAGCACTCCAGGAAGGACAAGCCAATTCGTTGACACATTTTCTGATGATGTCTATCATTTAACATCCAGAGAAATTACAATACCTAGAGATGGAACAAGCTCAGCTCTGACTCCACAAATGACTGCAACTCACCCTCCATCTCCTGATCCTGGCTCTGCTAGAAGCACCTGGCTTGGCATCTTGTCCTCATCTCCTTCTTCTCCTACTCCCAAAGTCACAATGAGCTCCACATTTTCAACTCAGAGAGTCACCACAAGCATGATAATGGACACAGTTGAAACTAGTCGGTGGAACATGCCCAACTTACCTTCCACGACTTCCTTGACACCAAGTAATATTCCAACAAGTGGTGCCATAGGAAAAAGCACCCTGGTTCCCTTGGACACTCCATCTCCAGCCACATCATTGGAGGCATCAGAAGGGGGACTTCCAACCCTCAGCACCTACCCTGAATCAACAAACACACCCAGCATCCACCTCGGAGCACACGCTAGTTCAGAAAGTCCAAGCACCATCAAACTTACCATGGCTTCAGTAGTAAAACCTGGCTCTTACACACCTCTCACCTTCCCCTCAATAGAGACCCACATTCATGTATCAACAGCCAGAATGGCTTACTCTTCTGGGTCTTCACCTGAGATGACAGCTCCTGGAGAGACTAACACTGGTAGTACCTGGGACCCCACCACCTACATCACCACTACGGATCCTAAGGATACAAGTTCAGCTCAGGTCTCTACACCCCACTCAGTGAGGACACTCAGAACCACAGAAAACCATCCAAAGACAGAGTCCGCCACCCCAGCTGCTTACTCTGGAAGTCCTAAAATCTCAAGTTCACCCAATCTCACCAGTCCGGCCACAAAAGCATGGACCATCACAGACACAACTGAACACTCCACTCAATTACATTACACAAAATTGGCAGAAAAATCATCTGGATTTGAGACACAGTCAGCTCCAGGACCTGTCTCTGTAGTAATCCCTACCTCCCCTACCATTGGAAGCAGCACATTGGAACTAACTTCTGATGTCCCAGGGGAACCCCTGGTCCTTGCTCCCAGTGAGCAGACCACAATCACTCTCCCCATGGCAACATGGCTGAGTACCAGTTTGACAGAGGAAATGGCTTCAACAGACCTTGATATTTCAAGTCCAAGTTCACCCATGAGTACATTTGCTATTTTTCCACCTATGTCCACACCTTCTCATGAACTTTCAAAGTCAGAGGCAGATACCAGTGCCATTAGAAATACAGATTCAACAACGTTGGATCAGCACCTAGGAATCAGGAGTTTGGGCAGAACTGGGGACTTAACAACTGTTCCTATCACCCCACTGACAACCACGTGGACCAGTGTGATTGAACACTCAACACAAGCACAGGACACCCTTTCTGCAACGATGAGTCCTACTCACGTGACACAGTCACTCAAAGATCAAACATCTATACCAGCCTCAGCATCCCCTTCCCATCTTACTGAAGTCTACCCTGAGCTCGGGACACAAGGGAGAAGCTCCTCTGAGGCAACCACTTTTTGGAAACCATCTACAGACACACTGTCCAGAGAGATTGAGACTGGCCCAACAAACATTCAATCCACTCCACCCATGGACAACACAACAACAGGGAGCAGTAGTAGTGGAGTCACCCTGGGCATAGCCCACCTTCCCATAGGAACATCCTCCCCAGCTGAGACATCCACAAACATGGCACTGGAAAGAAGAAGTTCTACAGCCACTGTCTCTATGGCTGGGACAATGGGACTCCTTGTTACTAGTGCTCCAGGAAGAAGCATCAGCCAGTCATTAGGAAGAGTTTCCTCTGTCCTTTCTGAGTCAACTACTGAAGGAGTCACAGATTCTAGTAAGGGAAGCAGCCCAAGGCTGAACACACAGGGAAATACAGCTCTCTCCTCCTCTCTTGAACCCAGCTATGCTGAAGGAAGCCAGATGAGCACAAGCATCCCTCTAACCTCATCTCCTACAACTCCTGATGTGGAATTCATAGGGGGCAGCACATTTTGGACCAAGGAGGTCACCACAGTTATGACCTCAGACATCTCCAAGTCTTCAGCAAGGACAGAGTCCAGCTCAGCTACCCTTATGTCCACAGCTTTGGGAAGCACTGAAAATACAGGAAAAGAAAAACTCAGAACTGCCTCTATGGATCTTCCATCTCCAACTCCATCAATGGAGGTGACACCATGGATTTCTCTCACTCTCAGTAATGCCCCCAATACCACAGATTCACTTGACCTCAGCCATGGGGTGCACACCAGCTCTGCAGGGACTTTGGCCACTGACAGGTCATTGAATACTGGTGTCACTAGAGCCTCCAGATTGGAAAACGGCTCTGATACCTCTTCTAAGTCCCTGTCTATGGGAAACAGCACTCACACTTCCATGACTTACACAGAGAAGAGTGAAGTGTCTTCTTCAATCCATCCCCGACCTGAGACCTCAGCTCCTGGAGCAGAGACCACTTTGACTTCCACTCCTGGAAACAGGGCCATAAGCTTAACATTGCCTTTTTCATCCATTCCAGTGGAAGAAGTCATTTCTACAGGCATAACCTCAGGACCAGACATCAACTCAGCACCCATGACACATTCTCCCATCACCCCACCAACAATTGTATGGACCAGTACAGGCACAATTGAACAGTCCACTCAACCACTACATGCAGTTTCTTCAGAAAAAGTTTCTGTGCAGACACAGTCAACTCCATATGTCAACTCTGTGGCAGTGTCTGCTTCCCCTACCCATGAGAATTCAGTCTCTTCTGGAAGCAGCACATCCTCTCCATATTCCTCAGCCTCACTTGAATCCTTGGATTCCACAATCAGTAGGAGGAATGCAATCACTTCCTGGCTATGGGACCTCACTACATCTCTCCCCACTACAACTTGGCCAAGTACTAGTTTATCTGAGGCACTGTCCTCAGGCCATTCTGGGGTTTCAAACCCAAGTTCAACTACGACTGAATTTCCACTCTTTTCAGCTGCATCCACATCTGCTGCTAAGCAAAGAAATCCAGAAACAGAGACCCATGGTCCCCAGAATACAGCCGCGAGTACTTTGAACACTGATGCATCCTCGGTCACAGGTCTTTCTGAGACTCCTGTGGGGGCAAGTATCAGCTCTGAAGTCCCTCTTCCAATGGCCATAACTTCTAGATCAGATGTTTCTGGCCTTACATCTGAGAGTACTGCTAACCCGAGTTTAGGCACAGCCTCTTCAGCAGGGACCAAATTAACTAGGACAATATCCCTGCCCACTTCAGAGTCTTTGGTTTCCTTTAGAATGAACAAGGATCCATGGACAGTGTCAATCCCTTTGGGGTCCCATCCAACTACTAATACAGAAACAAGCATCCCAGTAAACAGCGCAGGTCCACCTGGCTTGTCCACAGTAGCATCAGATGTAATTGACACACCTTCAGATGGGGCTGAGAGTATTCCCACTGTCTCCTTTTCCCCCTCCCCTGATACTGAAGTGACAACTATCTCACATTTCCCAGAAAAGACAACTCATTCATTTAGAACCATTTCATCTCTCACTCATGAGTTGACTTCAAGAGTGACACCTATTCCTGGGGATTGGATGAGTTCAGCTATGTCTACAAAGCCCACAGGAGCCAGTCCCTCCATTACACTGGGAGAGAGAAGGACAATCACCTCTGCTGCTCCAACCACTTCCCCCATAGTTCTCACTGCTAGTTTCACAGAGACCAGCACAGTTTCACTGGATAATGAAACTACAGTAAAAACCTCAGATATCCTTGACGCACGGAAAACAAATGAGCTCCCCTCAGATAGCAGTTCTTCTTCTGATCTGATCAACACCTCCATAGCTTCTTCAACTATGGATGTCACTAAAACAGCCTCCATCAGTCCCACTAGCATCTCAGGAATGACAGCAAGTTCCTCCCCATCTCTCTTCTCTTCAGATAGACCCCAGGTTCCCACATCTACAACAGAGACAAATACAGCCACCTCTCCATCTGTTTCCAGTAACACCTATTCTCTTGATGGGGGCTCCAATGTGGGTGGCACTCCATCCACTTTACCACCCTTTACAATCACCCACCCTGTCGAGACAAGCTCGGCCCTATTAGCCTGGTCTAGACCAGTAAGAACTTTCAGCACCATGGTCAGCACTGACACTGCCTCCGGAGAAAATCCTACCTCTAGCAATTCTGTGGTGACTTCTGTTCCAGCACCAGGTACATGGACCAGTGTAGGCAGTACTACTGACTTACCTGCCATGGGCTTTCTCAAGACAAGTCCTGCAGGAGAGGCACACTCACTTCTAGCATCAACTATTGAACCAGCCACTGCCTTCACTCCCCATCTCTCAGCAGCAGTGGTCACTGGATCCAGTGCTACATCAGAAGCCAGTCTTCTCACTACGAGTGAAAGCAAAGCCATTCATTCTTCACCACAGACCCCAACTACACCCACCTCTGGAGCAAACTGGGAAACTTCAGCTACTCCTGAGAGCCTTTTGGTAGTCACTGAGACTTCAGACACAACACTTACCTCAAAGATTTTGGTCACAGATACCATCTTGTTTTCAACTGTGTCCACGCCACCTTCTAAATTTCCAAGTACGGGGACTCTGTCTGGAGCTTCCTTCCCTACTTTACTCCCGGACACTCCAGCCATCCCTCTCACTGCCACTGAGCCAACAAGTTCATTAGCTACATCCTTTGATTCCACCCCACTGGTGACTATAGCTTCGGATAGTCTTGGCACAGTCCCAGAGACTACCCTGACCATGTCAGAGACCTCAAATGGTGATGCACTGGTTCTTAAGACAGTAAGTAACCCAGATAGGAGCATCCCTGGAATCACTATCCAAGGAGTAACAGAAAGTCCACTCCATCCTTCTTCCACTTCCCCCTCTAAGATTGTTGCTCCACGGAATACAACCTATGAAGGTTCGATCACAGTGGCACTTTCTACTTTGCCTGCGGGAACTACTGGTTCCCTTGTATTCAGTCAGAGTTCTGAAAACTCAGAGACAACGGCTTTGGTAGACTCATCAGCTGGGCTTGAGAGGGCATCTGTGATGCCACTAACCACAGGAAGCCAGGGTATGGCTAGCTCTGGAGGAATCAGAAGTGGGTCCACTCACTCAACTGGAACCAAAACATTTTCTTCTCTCCCTCTGACCATGAACCCAGGTGAGGTTACAGCCATGTCTGAAATCACCACGAACAGACTGACAGCTACTCAATCAACAGCACCCAAAGGGATACCTGTGAAGCCCACCAGTGCTGAGTCAGGCCTCCTAACACCTGTCTCTGCCTCCTCAAGCCCATCAAAGGCCTTTGCCTCACTGACTACAGCTCCCCCAACTTGGGGGATCCCACAGTCTACCTTGACATTTGAGTTTTCTGAGGTCCCAAGTTTGGATACTAAGTCCGCTTCTTTACCAACTCCTGGACAGTCCCTGAACACCATTCCAGACTCAGATGCAAGCACAGCATCTTCCTCACTGTCCAAGTCTCCAGAAAAAAACCCAAGGGCAAGGATGATGACTTCCACAAAGGCCATAAGTGCAAGCTCATTTCAATCAACAGGTTTTACTGAAACCCCTGAGGGATCTGCCTCCCCTTCTATGGCAGGGCATGAACCCAGAGTCCCCACTTCAGGAACAGGGGACCCTAGATATGCCTCAGAGAGCATGTCTTATCCAGACCCAAGCAAGGCATCATCAGCTATGACATCGACCTCTCTTGCATCAAAACTCACAACTCTCTTCAGCACAGGTCAAGCAGCAAGGTCTGGTTCTAGTTCCTCTCCCATAAGCCTATCCACTGAGAAAGAAACAAGCTTCCTTTCCCCCACTGCATCCACCTCCAGAAAGACTTCACTATTTCTTGGGCCTTCCATGGCAAGGCAGCCCAACATATTGGTGCATCTTCAGACTTCAGCTCTGACACTTTCTCCAACATCCACTCTAAATATGTCCCAGGAGGAGCCTCCTGAGTTAACCTCAAGCCAGACCATTGCAGAAGAAGAGGGAACAACAGCTGAAACACAGACGTTAACCTTCACACCATCTGAGACCCCAACATCCTTGTTACCTGTCTCTTCTCCCACAGAACCCACAGCCAGAAGAAAGAGTTCTCCAGAAACATGGGCAAGCTCTATTTCAGTTCCTGCCAAGACCTCCTTGGTTGAAACAACTGATGGAACGCTAGTGACCACCATAAAGATGTCAAGCCAGGCAGCACAAGGAAATTCCACGTGGCCTGCCCCAGCAGAGGAGACGGGGAGCAGTCCAGCAGGCACATCCCCAGGAAGCCCAGAAATGTCTACCACTCTCAAAATCATGAGCTCCAAGGAACCCAGCATCAGCCCAGAGATCAGGTCCACTGTGAGAAATTCTCCTTGGAAGACTCCAGAAACAACTGTTCCCATGGAGACCACAGTGGAACCAGTCACCCTTCAGTCCACAGCCCTAGGAAGTGGCAGCACCAGCATCTCTCACCTGCCCACAGGAACCACATCACCAACCAAGTCACCAACAGAAAATATGTTGGCTACAGAAAGGGTCTCCCTCTCCCCATCCCCACCTGAGGCTTGGACCAACCTTTATTCTGGAACTCCAGGAGGGACCAGGCAGTCACTGGCCACAATGTCCTCTGTCTCCCTAGAGTCACCAACTGCTAGAAGCATCACAGGGACTGGTCAGCAAAGCAGTCCAGAACTGGTTTCAAAGACAACTGGAATGGAATTCTCTATGTGGCATGGCTCTACTGGAGGGACCACAGGGGACACACATGTCTCTCTGAGCACATCTTCCAATATCCTTGAAGACCCTGTAACCAGCCCAAACTCTGTGAGCTCATTGACAGATAAATCCAAACATAAAACCGAGACATGGGTAAGCACCACAGCCATTCCCTCCACTGTCCTGAATAATAAGATAATGGCAGCTGAACAACAGACAAGTCGATCTGTGGATGAGGCTTATTCATCAACTAGTTCTTGGTCAGATCAGACATCTGGGAGTGACATCACCCTTGGTGCATCTCCTGATGTCACAAACACATTATACATCACCTCCACAGCACAAACCACCTCACTAGTGTCTCTGCCCTCTGGAGACCAAGGCATTACAAGCCTCACCAATCCCTCAGGAGGAAAAACAAGCTCTGCGTCATCTGTCACATCTCCTTCAATAGGGCTTGAGACTCTGAGGGCCAATGTAAGTGCAGTGAAAAGTGACATTGCCCCTACTGCTGGGCATCTATCTCAGACTTCATCTCCTGCGGAAGTGAGCATCCTGGACGTAACCACAGCTCCTACTCCAGGTATCTCCACCACCATCACCACCATGGGAACCAACTCAATCTCAACTACCACACCCAACCCAGAAGTGGGTATGAGTACCATGGACAGCACCCCGGCCACAGAGAGGCGCACAACTTCTACAGAACACCCTTCCACCTGGTCTTCCACAGCTGCATCAGATTCCTGGACTGTCACAGACATGACTTCAAACTTGAAAGTTGCAAGATCTCCTGGAACAATTTCCACAATGCATACAACTTCATTCTTAGCCTCAAGCACTGAATTAGACTCCATGTCTACTCCCCATGGCCGTATAACTGTCATTGGAACCAGCCTGGTCACTCCATCCTCTGATGCTTCAGCTGTAAAGACAGAGACCAGTACAAGTGAAAGAACATTGAGTCCTTCAGACACAACTGCATCTACTCCCATCTCAACTTTTTCTCGTGTCCAGAGGATGAGCATCTCAGTTCCTGACATTTTAAGTACAAGTTGGACTCCCAGTAGTACAGAAGCAGAAGATGTGCCTGTTTCAATGGTTTCTACAGATCATGCTAGTACAAAGACTGACCCAAATACGCCCCTGTCCACTTTTCTGTTTGATTCTCTGTCCACTCTTGACTGGGACACTGGGAGATCTCTGTCATCAGCCACAGCCACTACCTCAGCTCCTCAGGGGGCCACAACTCCCCAGGAACTCACTTTGGAAACCATGATCAGCCCAGCTACCTCACAGTTGCCCTTCTCTATAGGGCACATTACAAGTGCAGTCACACCAGCTGCAATGGCAAGGAGCTCTGGAGTTACTTTTTCAAGACCAGATCCCACAAGCAAAAAGGCAGAGCAGACTTCCACTCAGCTTCCCACCACCACTTCTGCACATCCAGGGCAGGTGCCCAGATCAGCAGCAACAACTCTGGATGTGATCCCACACACAGCAAAAACTCCAGATGCAACTTTTCAGAGACAAGGGCAGACAGCTCTTACAACAGAGGCAAGAGCTACATCTGACTCCTGGAATGAGAAAGAAAAATCAACCCCAAGTGCACCTTGGATCACTGAGATGATGAATTCTGTCTCAGAAGATACCATCAAGGAGGTTACCAGCTCCTCCAGTGTATTAAGGACCCTGAATACGCTGGACATAAACTTGGAATCTGGGACGACTTCATCCCCAAGTTGGAAAAGCAGCCCATATGAGAGAATTGCCCCTTCTGAGTCCACCACAGACAAAGAGGCAATTCACCCTTCTACAAACACAGTAGAGACCACAGGCTGGGTCACAAGTTCCGAACATGCTTCTCATTCCACTATCCCAGCCCACTCAGCGTCATCCAAACTCACATCTCCAGTGGTTACAACCTCCACCAGGGAACAAGCAATAGTTTCTATGTCAACAACCACATGGCCAGAGTCTACAAGGGCTAGAACAGAGCCTAATTCCTTCTTGACTATTGAACTGAGGGACGTCAGCCCTTACATGGACACCAGCTCAACCACACAAACAAGTATTATCTCTTCCCCAGGTTCCACTGCGATCACCAAGGGGCCTAGAACAGAAATTACCTCCTCTAAGAGAATATCCAGCTCATTCCTTGCCCAGTCTATGAGGTCGTCAGACAGCCCCTCAGAAGCCATCACCAGGCTGTCTAACTTTCCTGCCATGACAGAATCTGGAGGAATGATCCTTGCTATGCAAACAAGTCCACCTGGCGCTACATCACTAAGTGCACCTACTTTGGATACATCAGCCACAGCCTCCTGGACAGGGACTCCACTGGCTACGACTCAGAGATTTACATACTCAGAGAAGACCACTCTCTTTAGCAAAGGTCCTGAGGATACATCACAGCCAAGCCCTCCCTCTGTGGAAGAAACCAGCTCTTCCTCTTCCCTGGTACCTATCCATGCTACAACCTCGCCTTCCAATATTTTGTTGACATCACAAGGGCACAGTCCCTCCTCTACTCCACCTGTGACCTCAGTTTTCTTGTCTGAGACCTCTGGCCTGGGGAAGACCACAGACATGTCGAGGATAAGCTTGGAACCTGGCACAAGTTTACCTCCCAATTTGAGCAGTACAGCAGGTGAGGCGTTATCCACTTATGAAGCCTCCAGAGATACAAAGGCAATTCATCATTCTGCAGACACAGCAGTGACGAATATGGAGGCAACCAGTTCTGAATATTCTCCTATCCCAGGCCATACAAAGCCATCCAAAGCCACATCTCCATTGGTTACCTCCCACATCATGGGGGACATCACTTCTTCCACATCAGTATTTGGCTCCTCCGAGACCACAGAGATTGAGACAGTGTCCTCTGTGAACCAGGGACTTCAGGAGAGAAGCACATCCCAGGTGGCCAGCTCTGCTACAGAGACAAGCACTGTCATTACCCATGTGTCTAGTGGTGATGCTACTACTCATGTCACCAAGACACAAGCCACTTTCTCTAGCGGAACATCCATCTCAAGCCCTCATCAGTTTATAACTTCTACCAACACATTTACAGATGTGAGCACCAACCCCTCCACCTCTCTGATAATGACAGAATCTTCAGGAGTGACCATCACCACCCAAACAGGTCCTACTGGAGCTGCAACACAGGGTCCATATCTCTTGGACACATCAACCATGCCTTACTTGACAGAGACTCCATTAGCTGTGACTCCAGATTTTATGCAATCAGAGAAGACCACTCTCATAAGCAAAGGTCCCAAGGATGTGTCCTGGACAAGCCCTCCCTCTGTGGCAGAAACCAGCTATCCCTCTTCCCTGACACCTTTCTTGGTCACAACCATACCTCCTGCCACTTCCACGTTACAAGGGCAACATACATCCTCTCCTGTTTCTGCGACTTCAGTTCTTACCTCTGGACTGGTGAAGACCACAGATATGTTGAACACAAGCATGGAACCTGTGACCAATTCACCTCAAAATTTGAACAATCCATCAAATGAGATACTGGCCACTTTGGCAGCCACCACAGATATAGAGACTATTCATCCTTCCATAAACAAAGCAGTGACCAATATGGGGACTGCCAGTTCAGCACATGTACTGCATTCCACTCTCCCAGTCAGCTCAGAACCATCTACAGCCACATCTCCAATGGTTCCTGCCTCCAGCATGGGGGACGCTCTTGCTTCTATATCAATACCTGGTTCTGAGACCACAGACATTGAGGGAGAGCCAACATCCTCCCTGACTGCTGGACGAAAAGAGAACAGCACCCTCCAGGAGATGAACTCAACTACAGAGTCAAACATCATCCTCTCCAATGTGTCTGTGGGGGCTATTACTGAAGCCACAAAAATGGAAGTCCCCTCTTTTGATGCAACATTCATACCAACTCCTGCTCAGTCAACAAAGTTCCCAGATATTTTCTCAGTAGCCAGCAGTAGACTTTCAAACTCTCCTCCCATGACAATATCTACCCACATGACCACCACCCAGACAGGGTCTTCTGGAGCTACATCAAAGATTCCACTTGCCTTAGACACATCAACCTTGGAAACCTCAGCAGGGACTCCATCAGTGGTGACTGAGGGGTTTGCCCACTCAAAAATAACCACTGCAATGAACAATGATGTCAAGGACGTGTCACAGACAAACCCTCCCTTTCAGGATGAAGCCAGCTCTCCCTCTTCTCAAGCACCTGTCCTTGTCACAACCTTACCTTCTTCTGTTGCTTTCACACCGCAATGGCACAGTACCTCCTCTCCTGTTTCTATGTCCTCAGTTCTTACTTCTTCACTGGTAAAGACCGCAGGCAAGGTGGATACAAGCTTAGAAACAGTGACCAGTTCACCTCAAAGTATGAGCAACACTTTGGATGACATATCGGTCACTTCAGCAGCCACCACAGATATAGAGACAACGCATCCTTCCATAAACACAGTAGTTACCAATGTGGGGACCACCGGTTCAGCATTTGAATCACATTCTACTGTCTCAGCTTACCCAGAGCCATCTAAAGTCACATCTCCAAATGTTACCACCTCCACCATGGAAGACACCACAATTTCCAGATCAATACCTAAATCCTCTAAGACTACAAGAACTGAGACTGAGACAACTTCCTCCCTGACTCCTAAACTGAGGGAGACCAGCATCTCCCAGGAGATCACCTCGTCCACAGAGACAAGCACTGTTCCTTACAAAGAGCTCACTGGTGCCACTACCGAGGTATCCAGGACAGATGTCACTTCCTCTAGCAGTACATCCTTCCCTGGCCCTGATCAGTCCACAGTGTCACTAGACATCTCCACAGAAACCAACACCAGGCTGTCTACCTCCCCAATAATGACAGAATCTGCAGAAATAACCATCACCACCCAAACAGGTCCTCATGGGGCTACATCACAGGATACTTTTACCATGGACCCATCAAATACAACCCCCCAGGCAGGGATCCACTCAGCTATGACTCATGGATTTTCACAATTGGATGTGACCACTCTTATGAGCAGAATTCCACAGGATGTATCATGGACAAGTCCTCCCTCTGTGGATAAAACCAGCTCCCCCTCTTCCTTTCTGTCCTCACCTGCAATGACCACACCTTCCCTGATTTCTTCTACCTTACCAGAGGATAAGCTCTCCTCTCCTATGACTTCACTTCTCACCTCTGGCCTAGTGAAGATTACAGACATATTACGTACACGCTTGGAACCTGTGACCAGCTCACTTCCAAATTTCAGCAGCACCTCAGATAAGATACTGGCCACTTCTAAAGACAGTAAAGACACAAAGGAAATTTTTCCTTCTATAAACACAGAAGAGACCAATGTGAAAGCCAACAACTCTGGACATGAATCCCATTCCCCTGCACTGGCTGACTCAGAGACACCCAAAGCCACAACTCAAATGGTTATCACCACCACTGTGGGAGATCCAGCTCCTTCCACATCAATGCCAGTGCATGGTTCCTCTGAGACTACAAACATTAAGAGAGAGCCAACATATTTCTTGACTCCTAGACTGAGAGAGACCAGTACCTCTCAGGAGTCCAGCTTTCCCACGGACACAAGTTTTCTACTTTCCAAAGTCCCCACTGGTACTATTACTGAGGTCTCCAGTACAGGGGTCAACTCTTCTAGCAAAATTTCCACCCCAGACCATGATAAGTCCACAGTGCCACCTGACACCTTCACAGGAGAGATCCCCAGGGTCTTCACCTCCTCTATTAAGACAAAATCTGCAGAAATGACGATCACCACCCAAGCAAGTCCTCCTGAGTCTGCATCGCACAGTACCCTTCCCTTGGACACATCAACCACACTTTCCCAGGGAGGGACTCATTCAACTGTGACTCAGGGATTCCCATACTCAGAGGTGACCACTCTCATGGGCATGGGTCCTGGGAATGTGTCATGGATGACAACTCCCCCTGTGGAAGAAACCAGCTCTGTGTCTTCCCTGATGTCTTCACCTGCCATGACATCCCCTTCTCCTGTTTCCTCCACATCACCACAGAGCATCCCCTCCTCTCCTCTTCCTGTGACTGCACTTCCTACTTCTGTTCTGGTGACAACCACAGATGTGTTGGGCACAACAAGCCCAGAGTCTGTAACCAGTTCACCTCCAAATTTGAGCAGCATCACTCATGAGAGACCGGCCACTTACAAAGACACTGCACACACAGAAGCCGCCATGCATCATTCCACAAACACCGCAGTGACCAATGTAGGGACTTCCGGGTCTGGACATAAATCACAATCCTCTGTCCTAGCTGACTCAGAGACATCGAAAGCCACACCTCTGATGAGTACCACCTCCACCCTGGGGGACACAAGTGTTTCCACATCAACTCCTAATATCTCTCAGACTAACCAAATTCAAACAGAGCCAACAGCATCCCTGAGCCCTAGACTGAGGGAGAGCAGCACGTCTGAGAAGACCAGCTCAACAACAGAGACAAATACTGCCTTTTCTTATGTGCCCACAGGTGCTATTACTCAGGCCTCCAGAACAGAAATCTCCTCTAGCAGAACATCCATCTCAGACCTTGATCGGCCCACAATAGCACCCGACATCTCCACAGGAATGATCACCAGGCTCTTCACCTCCCCCATCATGACAAAATCTGCAGAAATGACCGTCACCACTCAAACAACTACTCCTGGGGCTACATCACAGGGTATCCTTCCCTGGGACACATCAACCACACTTTTCCAGGGAGGGACTCATTCAACCGTGTCTCAGGGATTCCCACACTCAGAGATAACCACTCTTCGGAGCAGAACCCCTGGAGATGTGTCATGGATGACAACTCCCCCTGTGGAAGAAACCAGCTCTGGGTTTTCCCTGATGTCACCTTCCATGACATCCCCTTCTCCTGTTTCCTCCACATCACCAGAGAGCATCCCCTCCTCTCCTCTCCCTGTGACTGCACTTCTTACTTCTGTTCTGGTGACAACCACAAATGTATTGGGCACAACAAGCCCAGAGCCCGTAACGAGTTCACCTCCAAATTTAAGCAGCCCCACACAGGAGAGACTGACCACTTACAAAGACACTGCGCACACAGAAGCCATGCATGCTTCCATGCATACAAACACTGCAGTGGCCAACGTGGGGACCTCCATTTCTGGACATGAATCACAATCTTCTGTCCCAGCTGATTCACACACATCCAAAGCCACATCTCCAATGGGTATCACCTTCGCCATGGGGGATACAAGTGTTTCTACATCAACTCCTGCCTTCTTTGAGACTAGAATTCAGACTGAATCAACATCCTCTTTGATTCCTGGATTAAGGGACACCAGGACGTCTGAGGAGATCAACACTGTGACAGAGACCAGCACTGTCCTTTCAGAAGTGCCCACTACTACTACTACTGAGGTCTCCAGGACAGAAGTTATCACTTCCAGCAGAACAACCATCTCAGGGCCTGATCATTCCAAAATGTCACCCTACATCTCCACAGAAACCATCACCAGGCTCTCCACTTTTCCTTTTGTAACAGGATCCACAGAAATGGCCATCACCAACCAAACAGGTCCTATAGGGACTATCTCACAGGCTACCCTTACCCTGGACACATCAAGCACAGCTTCCTGGGAAGGGACTCACTCACCTGTGACTCAGAGATTTCCACACTCAGAGGAGACCACTACTATGAGCAGAAGTACTAAGGGCGTGTCATGGCAAAGCCCTCCCTCTGTGGAAGAAACCAGTTCTCCTTCTTCCCCAGTGCCTTTACCTGCAATAACCTCACATTCATCTCTTTATTCCGCAGTATCAGGAAGTAGCCCCACTTCTGCTCTCCCTGTGACTTCCCTTCTCACCTCTGGCAGGAGGAAGACCATAGACATGTTGGACACACACTCAGAACTTGTGACCAGCTCCTTACCAAGTGCAAGTAGCTTCTCAGGTGAGATACTCACTTCTGAAGCCTCCACAAATACAGAGACAATTCACTTTTCAGAGAACACAGCAGAAACCAATATGGGGACCACCAATTCTATGCATAAACTACATTCCTCTGTCTCAATCCACTCCCAGCCATCCGGACACACACCTCCAAAGGTTACTGGATCTATGATGGAGGACGCTATTGTTTCCACATCAACACCTGGTTCTCCTGAGACTAAAAATGTTGACAGAGACTCAACATCCCCTCTGACTCCTGAACTGAAAGAGGACAGCACCGCCCTGGTGATGAACTCAACTACAGAGTCAAACACTGTTTTCTCCAGTGTGTCCCTGGATGCTGCTACTGAGGTCTCCAGGGCAGAAGTCACCTACTATGATCCTACATTCATGCCAGCTTCTGCTCAGTCAACAAAGTCCCCAGACATTTCACCTGAAGCCAGCAGCAGTCATTCTAACTCTCCTCCCTTGACAATATCTACACACAAGACCATCGCCACACAAACAGGTCCTTCTGGGGTGACATCTCTTGGCCAACTGACCCTGGACACATCAACCATAGCCACCTCAGCAGGAACTCCATCAGCCAGAACTCAGGATTTTGTAGATTCAGAAACAACCAGTGTCATGAACAATGATCTCAATGATGTGTTGAAGACAAGCCCTTTCTCTGCAGAAGAAGCCAACTCTCTCTCTTCTCAGGCACCTCTCCTTGTGACAACCTCACCTTCTCCTGTAACTTCCACATTGCAAGAGCACAGTACCTCCTCTCTTGTTTCTGTGACCTCAGTACCCACCCCTACACTGGCGAAGATCACAGACATGGACACAAACTTAGAACCTGTGACTCGTTCACCTCAAAATTTAAGGAACACCTTGGCCACTTCAGAAGCCACCACAGATACACACACAATGCATCCTTCTATAAACACAGCAGTGGCCAATGTGGGGACCACCAGTTCACCAAATGAATTCTATTTTACTGTCTCACCTGACTCAGACCCATATAAAGCCACATCCGCAGTAGTTATCACTTCCACCTCGGGGGACTCAATAGTTTCCACATCAATGCCTAGATCCTCTGCGATGAAAAAGATTGAGTCTGAGACAACTTTCTCCCTGATATTTAGACTGAGGGAGACTAGCACCTCCCAGAAAATTGGCTCATCCTCAGACACAAGCACGGTCTTTGACAAAGCATTCACTGCTGCTACTACTGAGGTCTCCAGAACAGAACTCACCTCCTCTAGCAGAACATCCATCCAAGGCACTGAAAAGCCCACAATGTCACCGGACACCTCCACAAGATCTGTCACCATGCTTTCTACTTTTGCTGGCCTGACAAAATCCGAAGAAAGGACCATTGCCACCCAAACAGGTCCTCATAGGGCGACATCACAGGGTACCCTTACCTGGGACACATCAATCACAACCTCACAGGCAGGGACCCACTCAGCTATGACTCATGGATTTTCACAATTAGATTTGTCCACTCTTACGAGTAGAGTTCCTGAGTACATATCAGGGACAAGCCCACCCTCTGTGGAAAAAACCAGCTCTTCCTCTTCCCTTCTGTCTTTACCAGCAATAACCTCACCGTCCCCTGTACCTACTACATTACCAGAAAGTAGGCCGTCTTCTCCTGTTCATCTGACTTCACTCCCCACCTCTGGCCTAGTGAAGACCACAGATATGCTGGCATCTGTGGCCAGTTTACCTCCAAACTTGGGCAGCACCTCACATAAGATACCGACTACTTCAGAAGACATTAAAGATACAGAGAAAATGTATCCTTCCACAAACATAGCAGTAACCAATGTGGGGACCACCACTTCTGAAAAGGAATCTTATTCGTCTGTCCCAGCCTACTCAGAACCACCCAAAGTCACCTCTCCAATGGTTACCTCTTTCAACATAAGGGACACCATTGTTTCCACATCCATGCCTGGCTCCTCTGAGATTACAAGGATTGAGATGGAGTCAACATTCTCCCTGGCTCATGGGCTGAAGGGAACCAGCACCTCCCAGGACCCCATCGTATCCACAGAGAAAAGTGCTGTCCTTCACAAGTTGACCACTGGTGCTACTGAGACCTCTAGGACAGAAGTTGCCTCTTCTAGAAGAACATCCATTCCAGGCCCTGATCATTCCACAGAGTCACCAGACATCTCCACTGAAGTGATCCCCAGCCTGCCTATCTCCCTTGGCATTACAGAATCTTCAAATATGACCATCATCACTCGAACAGGTCCTCCTCTTGGCTCTACATCACAGGGCACATTTACCTTGGACACACCAACTACATCCTCCAGGGCAGGAACACACTCGATGGCGACTCAGGAATTTCCACACTCAGAAATGACCACTGTCATGAACAAGGACCCTGAGATTCTATCATGGACAATCCCTCCTTCTATAGAGAAAACCAGCTTCTCCTCTTCCCTGATGCCTTCACCAGCCATGACTTCACCTCCTGTTTCCTCAACATTACCAAAGACCATTCACACCACTCCTTCTCCTATGACCTCACTGCTCACCCCTAGCCTAGTGATGACCACAGACACATTGGGCACAAGCCCAGAACCTACAACCAGTTCACCTCCAAATTTGAGCAGTACCTCACATGAGATACTGACAACAGATGAAGACACCACAGCTATAGAAGCCATGCATCCTTCCACAAGCACAGCAGCGACTAATGTGGAAACCACCAGTTCTGGACATGGGTCACAATCCTCTGTCCTAGCTGACTCAGAAAAAACCAAGGCCACAGCTCCAATGGATACCACCTCCACCATGGGGCATACAACTGTTTCCACATCAATGTCTGTTTCCTCTGAGACTACAAAAATTAAGAGAGAGTCAACATATTCCTTGACTCCTGGACTGAGAGAGACCAGCATTTCCCAAAATGCCAGCTTTTCCACTGACACAAGTATTGTTCTTTCAGAAGTCCCCACTGGTACTACTGCTGAGGTCTCCAGGACAGAAGTCACCTCCTCTGGTAGAACATCCATCCCTGGCCCTTCTCAGTCCACAGTTTTGCCAGAAATATCCACAAGAACAATGACAAGGCTCTTTGCCTCGCCCACCATGACAGAATCAGCAGAAATGACCATCCCCACTCAAACAGGTCCTTCTGGGTCTACCTCACAGGATACCCTTACCTTGGACACATCCACCACAAAGTCCCAGGCAAAGACTCATTCAACTTTGACTCAGAGATTTCCACACTCAGAGATGACCACTCTCATGAGCAGAGGTCCTGGAGATATGTCATGGCAAAGCTCTCCCTCTCTGGAAAATCCCAGCTCTCTCCCTTCCCTGCTGTCTTTACCTGCCACAACCTCACCTCCTCCCATTTCCTCCACATTACCAGTGACTATCTCCTCCTCTCCTCTTCCTGTGACTTCACTTCTCACCTCTAGCCCGGTAACGACCACAGACATGTTACACACAAGCCCAGAACTTGTAACCAGTTCACCTCCAAAGCTGAGCCACACTTCAGATGAGAGACTGACCACTGGCAAGGACACCACAAATACAGAAGCTGTGCATCCTTCCACAAACACAGCAGCGTCCAATGTGGAGATTCCCAGCTCTGGACATGAATCCCCTTCCTCTGCCTTAGCTGACTCAGAGACATCCAAAGCCACATCACCAATGTTTATTACCTCCACCCAGGAGGATACAACTGTTGCCATATCAACCCCTCACTTCTTGGAGACTAGCAGAATTCAGAAAGAGTCAATTTCCTCCCTGAGCCCTAAATTGAGGGAGACAGGCAGTTCTGTGGAGACAAGCTCAGCCATAGAGACAAGTGCTGTCCTTTCTGAAGTGTCCATTGGTGCTACTACTGAGATCTCCAGGACAGAAGTCACCTCCTCTAGCAGAACATCCATCTCTGGTTCTGCTGAGTCCACAATGTTGCCAGAAATATCCACCACAAGAAAAATCATTAAGTTCCCTACTTCCCCCATCCTGGCAGAATCATCAGAAATGACCATCAAGACCCAAACAAGTCCTCCTGGGTCTACATCAGAGAGTACCTTTACATTAGACACATCAACCACTCCCTCCTTGGTAATAACCCATTCGACTATGACTCAGAGATTGCCACACTCAGAGATAACCACTCTTGTGAGTAGAGGTGCTGGGGATGTGCCACGGCCCAGCTCTCTCCCTGTGGAAGAAACAAGCCCTCCATCTTCCCAGCTGTCTTTATCTGCCATGATCTCACCTTCTCCTGTTTCTTCCACATTACCAGCAAGTAGCCACTCCTCTTCTGCTTCTGTGACTTCACTTCTCACACCAGGCCAAGTGAAGACTACTGAGGTGTTGGACGCAAGTGCAGAACCTGAAACCAGTTCACCTCCAAGTTTGAGCAGCACCTCAGTTGAAATACTGGCCACCTCTGAAGTCACCACAGATACGGAGAAAATTCATCCTTTCTCAAACACGGCAGTAACCAAAGTTGGAACTTCCAGTTCTGGACATGAATCCCCTTCCTCTGTCCTACCTGACTCAGAGACAACCAAAGCCACATCGGCAATGGGTACCATCTCCATTATGGGGGATACAAGTGTTTCTACATTAACTCCTGCCTTATCTAACACTAGGAAAATTCAGTCAGAGCCAGCTTCCTCACTGACCACCAGATTGAGGGAGACCAGCACCTCTGAAGAGACCAGCTTAGCCACAGAAGCAAACACTGTTCTTTCTAAAGTGTCCACTGGTGCTACTACTGAGGTCTCCAGGACAGAAGCCATCTCCTTTAGCAGAACATCCATGTCAGGCCCTGAGCAGTCCACAATGTCACAAGACATCTCCATAGGAACCATCCCCAGGATTTCTGCCTCCTCTGTCCTGACAGAATCTGCAAAAATGACCATCACAACCCAAACAGGTCCTTCGGAGTCTACACTAGAAAGTACCCTTAATTTGAACACAGCAACCACACCCTCTTGGGTGGAAACCCACTCTATAGTAATTCAGGGATTTCCACACCCAGAGATGACCACTTCCATGGGCAGAGGTCCTGGAGGTGTGTCATGGCCTAGCCCTCCCTTTGTGAAAGAAACCAGCCCTCCATCCTCCCCGCTGTCTTTACCTGCCGTGACCTCACCTCATCCTGTTTCCACCACATTCCTAGCACATATCCCCCCCTCTCCCCTTCCTGTGACTTCACTTCTCACCTCTGGCCCGGCGACAACCACAGATATCTTGGGTACAAGCACAGAACCTGGAACCAGTTCATCTTCAAGTTTGAGCACCACCTCCCATGAGAGACTGACCACTTACAAAGACACTGCACATACAGAAGCCGTGCATCCTTCCACAAACACAGGAGGGACCAATGTGGCAACCACCAGCTCTGGATATAAATCACAGTCCTCTGTCCTAGCTGACTCATCTCCAATGTGTACCACCTCCACCATGGGGGATACAAGTGTTCTCACATCAACTCCTGCCTTCCTTGAGACTAGGAGGATTCAGACAGAGCTAGCTTCCTCCCTGACCCCTGGATTGAGGGAGTCCAGCGGCTCTGAAGGGACCAGCTCAGGCACCAAGATGAGCACTGTCCTCTCTAAAGTGCCCACTGGTGCTACTACTGAGATCTCCAAGGAAGACGTCACCTCCATCCCAGGTCCCGCTCAATCCACAATATCACCAGACATCTCCACAAGAACCGTCAGCTGGTTCTCTACATCCCCTGTCATGACAGAATCAGCAGAAATAACCATGAACACCCATACAAGTCCTTTAGGGGCCACAACACAAGGCACCAGTACTTTGGACACGTCAAGCACAACCTCTTTGACAATGACACACTCAACTATATCTCAAGGATTTTCACACTCACAGATGAGCACTCTTATGAGGAGGGGTCCTGAGGATGTATCATGGATGAGCCCTCCCCTTCTGGAAAAAACTAGACCTTCCTTTTCTCTGATGTCTTCACCAGCCACAACTTCACCTTCTCCTGTTTCCTCCACATTACCAGAGAGCATCTCTTCCTCTCCTCTTCCTGTGACTTCACTCCTCACGTCTGGCTTGGCAAAAACTACAGATATGTTGCACAAAAGCTCAGAACCTGTAACCAACTCACCTGCAAATTTGAGCAGCACCTCAGTTGAAATACTGGCCACCTCTGAAGTCACCACAGATACAGAGAAAACTCATCCTTCTTCAAACAGAACAGTGACCGATGTGGGGACCTCCAGTTCTGGACATGAATCCACTTCCTTTGTCCTAGCTGACTCACAGACATCCAAAGTCACATCTCCAATGGTTATTACCTCCACCATGGAGGATACGAGTGTCTCCACATCAACTCCTGGCTTTTTTGAGACTAGCAGAATTCAGACAGAACCAACATCCTCCCTGACCCTTGGACTGAGAAAGACCAGCAGCTCTGAGGGGACCAGCTTAGCCACAGAGATGAGCACTGTCCTTTCTGGAGTGCCCACTGGTGCCACTGCTGAAGTCTCCAGGACAGAAGTCACCTCCTCTAGCAGAACATCCATCTCAGGCTTTGCTCAGCTCACAGTGTCACCAGAGACTTCCACAGAAACCATCACCAGACTCCCTACCTCCAGCATAATGACAGAATCAGCAGAAATGATGATCAAGACACAAACAGATCCTCCTGGGTCTACACCAGAGAGTACTCATACTGTGGACATATCAACAACACCCAACTGGGTAGAAACCCACTCGACTGTGACTCAGAGATTTTCACACTCAGAGATGACCACTCTTGTGAGCAGAAGCCCTGGTGATATGTTATGGCCTAGTCAATCCTCTGTGGAAGAAACCAGCTCTGCCTCTTCCCTGCTGTCTCTGCCTGCCACGACCTCACCTTCTCCTGTTTCCTCTACATTAGTAGAGGATTTCCCTTCCGCTTCTCTTCCTGTGACTTCTCTTCTCAACCCTGGCCTGGTGATAACCACAGACAGGATGGGCATAAGCAGAGAACCTGGAACCAGTTCCACTTCAAATTTGAGCAGCACCTCCCATGAGAGACTGACCACTTTGGAAGACACTGTAGATACAGAAGACATGCAGCCTTCCACACACACAGCAGTGACCAACGTGAGGACCTCCATTTCTGGACATGAATCACAATCTTCTGTCCTATCTGACTCAGAGACACCCAAAGCCACATCTCCAATGGGTACCACCTACACCATGGGGGAAACGAGTGTTTCCATATCCACTTCTGACTTCTTTGAGACCAGCAGAATTCAGATAGAACCAACATCCTCCCTGACTTCTGGATTGAGGGAGACCAGCAGCTCTGAGAGGATCAGCTCAGCCACAGAGGGAAGCACTGTCCTTTCTGAAGTGCCCAGTGGTGCTACCACTGAGGTCTCCAGGACAGAAGTGATATCCTCTAGGGGAACATCCATGTCAGGGCCTGATCAGTTCACCATATCACCAGACATCTCTACTGAAGCGATCACCAGGCTTTCTACTTCCCCCATTATGACAGAATCAGCAGAAAGTGCCATCACTATTGAGACAGGTTCTCCTGGGGCTACATCAGAGGGTACCCTCACCTTGGACACCTCAACAACAACCTTTTGGTCAGGGACCCACTCAACTGCATCTCCAGGATTTTCACACTCAGAGATGACCACTCTTATGAGTAGAACTCCTGGAGATGTGCCATGGCCGAGCCTTCCCTCTGTGGAAGAAGCCAGCTCTGTCTCTTCCTCACTGTCTTCACCTGCCATGACCTCAACTTCTTTTTTCTCCACATTACCAGAGAGCATCTCCTCCTCTCCTCATCCTGTGACTGCACTTCTCACCCTTGGCCCAGTGAAGACCACAGACATGTTGCGCACAAGCTCAGAACCTGAAACCAGTTCACCTCCAAATTTGAGCAGCACCTCAGCTGAAATATTAGCCACGTCTGAAGTCACCAAAGATAGAGAGAAAATTCATCCCTCCTCAAACACACCTGTAGTCAATGTAGGGACTGTGATTTATAAACATCTATCCCCTTCCTCTGTTTTGGCTGACTTAGTGACAACAAAACCCACATCTCCAATGGCTACCACCTCCACTCTGGGGAATACAAGTGTTTCCACATCAACTCCTGCCTTCCCAGAAACTATGATGACACAGCCAACTTCCTCCCTGACTTCTGGATTAAGGGAGATCAGTACCTCTCAAGAGACCAGCTCAGCAACAGAGAGAAGTGCTTCTCTTTCTGGAATGCCCACTGGTGCTACTACTAAGGTCTCCAGAACAGAAGCCCTCTCCTTAGGCAGAACATCCACCCCAGGTCCTGCTCAATCCACAATATCACCAGAAATCTCCACGGAAACCATCACTAGAATTTCTACTCCCCTCACCACGACAGGATCAGCAGAAATGACCATCACCCCCAAAACAGGTCATTCTGGGGCATCCTCACAAGGTACCTTTACCTTGGACACATCAAGCAGAGCCTCCTGGCCAGGAACTCACTCAGCTGCAACTCACAGATCTCCACACTCAGGGATGACCACTCCTATGAGCAGAGGTCCTGAGGATGTGTCATGGCCAAGCCGCCCATCAGTGGAAAAAACTAGCCCTCCATCTTCCCTGGTGTCTTTATCTGCAGTAACCTCACCTTCGCCACTTTATTCCACACCATCTGAGAGTAGCCACTCATCTCCTCTCCGGGTGACTTCTCTTTTCACCCCTGTCATGATGAAGACCACAGACATGTTGGACACAAGCTTGGAACCTGTGACCACTTCACCTCCCAGTATGAATATCACCTCAGATGAGAGTCTGGCCACTTCTAAAGCCACCATGGAGACAGAGGCAATTCAGCTTTCAGAAAACACAGCTGTGACTCAGATGGGCACCATCAGCGCTAGACAAGAATTCTATTCCTCTTATCCAGGCCTCCCAGAGCCATCCAAAGTGACATCTCCAGTGGTCACCTCTTCCACCATAAAAGACATTGTTTCTACAACCATACCTGCTTCCTCTGAGATAACAAGAATTGAGATGGAGTCAACATCCACCCTGACCCCCACACCAAGGGAGACCAGCACCTCCCAGGAGATCCACTCAGCCACAAAGCCAAGCACTGTTCCTTACAAGGCACTCACTAGTGCCACGATTGAGGACTCCATGACACAAGTCATGTCCTCTAGCAGAGGACCTAGCCCTGATCAGTCCACAATGTCACAAGACATATCCACTGAAGTGATCACCAGGCTCTCTACCTCCCCCATCAAGACAGAATCTACAGAAATGACCATTACCACCCAAACAGGTTCTCCTGGGGCTACATCAAGGGGTACCCTTACCTTGGACACTTCAACAACTTTTATGTCAGGGACCCACTCAACTGCATCTCAAGGATTTTCACACTCACAGATGACCGCTCTTATGAGTAGAACTCCTGGAGATGTGCCATGGCTAAGCCATCCCTCTGTGGAAGAAGCCAGCTCTGCCTCTTTCTCACTGTCTTCACCTGTCATGACCTCATCTTCTCCCGTTTCTTCCACATTACCAGACAGCATCCACTCTTCTTCGCTTCCTGTGACATCACTTCTCACCTCAGGGCTGGTGAAGACCACAGAGCTGTTGGGCACAAGCTCAGAACCTGAAACCAGTTCACCCCCAAATTTGAGCAGCACCTCAGCTGAAATACTGGCCATCACTGAAGTCACTACAGATACAGAGAAACTGGAGATGACCAATGTGGTAACCTCAGGTTATACACATGAATCTCCTTCCTCTGTCCTAGCTGACTCAGTGACAACAAAGGCCACATCTTCAATGGGTATCACCTACCCCACAGGAGATACAAATGTTCTCACATCAACCCCTGCCTTCTCTGACACCAGTAGGATTCAAACAAAGTCAAAGCTCTCACTGACTCCTGGGTTGATGGAGACCAGCATCTCTGAAGAGACCAGCTCTGCCACAGAAAAAAGCACTGTCCTTTCTAGTGTGCCCACTGGTGCTACTACTGAGGTCTCCAGGACAGAAGCCATCTCTTCTAGCAGAACATCCATCCCAGGCCCTGCTCAATCCACAATGTCATCAGACACCTCCATGGAAACCATCACTAGAATTTCTACCCCCCTCACAAGGAAAGAATCAACAGACATGGCCATCACCCCCAAAACAGGTCCTTCTGGGGCTACCTCGCAGGGTACCTTTACCTTGGACTCATCAAGCACAGCCTCCTGGCCAGGAACTCACTCAGCTACAACTCAGAGATTTCCACAGTCAGTGGTGACAACTCCTATGAGCAGAGGTCCTGAGGATGTGTCATGGCCAAGCCCGCTGTCTGTGGAAAAAAACAGCCCTCCATCTTCCCTGGTATCTTCATCTTCAGTAACCTCACCTTCGCCACTTTATTCCACACCATCTGGGAGTAGCCACTCCTCTCCTGTCCCTGTCACTTCTCTTTTCACCTCTATCATGATGAAGGCCACAGACATGTTGGATGCAAGTTTGGAACCTGAGACCACTTCAGCTCCCAATATGAATATCACCTCAGATGAGAGTCTGGCCGCTTCTAAAGCCACCACGGAGACAGAGGCAATTCACGTTTTTGAAAATACAGCAGCGTCCCATGTGGAAACCACCAGTGCTACAGAGGAACTCTATTCCTCTTCCCCAGGCTTCTCAGAGCCAACAAAAGTGATATCTCCAGTGGTCACCTCTTCCTCTATAAGAGACAACATGGTTTCCACAACAATGCCTGGCTCCTCTGGCATTACAAGGATTGAGATAGAGTCAATGTCATCTCTGACCCCTGGACTGAGGGAGACCAGAACCTCCCAGGACATCACCTCATCCACAGAGACAAGCACTGTCCTTTACAAGATGCCCTCTGGTGCCACTCCTGAGGTCTCCAGGACAGAAGTTATGCCCTCTAGCAGAACATCCATTCCTGGCCCTGCTCAGTCCACAATGTCACTAGACATCTCCGATGAAGTTGTCACCAGGCTGTCTACCTCTCCCATCATGACAGAATCTGCAGAAATAACCATCACCACCCAAACAGGTTATTCTCTGGCTACATCCCAGGTTACCCTTCCCTTGGGCACCTCAATGACCTTTTTGTCAGGGACCCACTCAACTATGTCTCAAGGACTTTCACACTCAGAGATGACCAATCTTATGAGCAGGGGTCCTGAAAGTCTGTCATGGACGAGCCCTCGCTTTGTGGAAACAACTAGATCTTCCTCTTCTCTGACATCATTACCTCTCACGACCTCACTTTCTCCTGTGTCCTCCACATTACTAGACAGTAGCCCCTCCTCTCCTCTTCCTGTGACTTCACTTATCCTCCCAGGCCTGGTGAAGACTACAGAAGTGTTGGATACAAGCTCAGAGCCTAAAACCAGTTCATCTCCAAATTTGAGCAGCACCTCAGTTGAAATACCGGCCACCTCTGAAATCATGACAGATACAGAGAAAATTCATCCTTCCTCAAACACAGCGGTGGCCAAAGTGAGGACCTCCAGTTCTGTTCATGAATCTCATTCCTCTGTCCTAGCTGACTCAGAAACAACCATAACCATACCTTCAATGGGTATCACCTCCGCTGTGGACGATACCACTGTTTTCACATCAAATCCTGCCTTCTCTGAGACTAGGAGGATTCCGACAGAGCCAACATTCTCATTGACTCCTGGATTCAGGGAGACTAGCACCTCTGAAGAGACCACCTCAATCACAGAAACAAGTGCAGTCCTTTATGGAGTGCCCACTAGTGCTACTACTGAAGTCTCCATGACAGAAATCATGTCCTCTAATAGAATACACATCCCTGACTCTGATCAGTCCACGATGTCTCCAGACATCATCACTGAAGTGATCACCAGGCTCTCTTCCTCATCCATGATGTCAGAATCAACACAAATGACCATCACCACCCAAAAAAGTTCTCCTGGGGCTACAGCACAGAGTACTCTTACCTTGGCCACAACAACAGCCCCCTTGGCAAGGACCCACTCAACTGTTCCTCCTAGATTTTTACACTCAGAGATGACAACTCTTATGAGTAGGAGTCCTGAAAATCCATCATGGAAGAGCTCTCTCTTTGTGGAAAAAACTAGCTCTTCATCTTCTCTGTTGTCCTTACCTGTCACGACCTCACCTTCTGTTTCTTCCACATTACCGCAGAGTATCCCTTCCTCCTCTTTTTCTGTGACTTCACTCCTCACCCCAGGCATGGTGAAGACTACAGACACAAGCACAGAACCTGGAACCAGTTTATCTCCAAATCTGAGTGGCACCTCAGTTGAAATACTGGCTGCCTCTGAAGTCACCACAGATACAGAGAAAATTCATCCTTCTTCAAGCATGGCAGTGACCAATGTGGGAACCACCAGTTCTGGACATGAACTATATTCCTCTGTTTCAATCCACTCGGAGCCATCCAAGGCTACATACCCAGTGGGTACTCCCTCTTCCATGGCTGAAACCTCTATTTCCACATCAATGCCTGCTAATTTTGAGACCACAGGATTTGAGGCTGAGCCATTTTCTCATTTGACTTCTGGATTTAGGAAGACAAACATGTCCCTGGACACCAGCTCAGTCACACCAACAAATACACCTTCTTCTCCTGGGTCCACTCACCTTTTACAGAGTTCCAAGACTGATTTCACCTCTTCTGCAAAAACATCATCCCCAGACTGGCCTCCAGCCTCACAGTATACTGAAATTCCAGTGGACATAATCACCCCCTTTAATGCTTCTCCATCTATTACGGAGTCCACTGGGATAACCTCCTTCCCAGAATCCAGGTTTACTATGTCTGTAACAGAAAGTACTCATCATCTGAGTACAGATTTGCTGCCTTCAGCTGAGACTATTTCCACTGGCACAGTGATGCCTTCTCTATCAGAGGCCATGACTTCATTTGCCACCACTGGAGTTCCACGAGCCATCTCAGGTTCAGGTAGTCCATTCTCTAGGACAGAGTCAGGCCCTGGGGATGCTACTCTGTCCACCATTGCAGAGAGCCTGCCTTCATCCACTCCTGTGCCATTCTCCTCTTCAACCTTCACTACCACTGATTCTTCAACCATCCCAGCCCTCCATGAGATAACTTCCTCTTCAGCTACCCCATATAGAGTGGACACCAGTCTTGGGACAGAGAGCAGCACTACTGAAGGACGCTTGGTTATGGTCAGTACTTTGGACACTTCAAGCCAACCAGGCAGGACATCTTCATCACCCATTTTGGATACCAGAATGACAGAGAGCGTTGAGCTGGGAACAGTGACAAGTGCTTATCAAGTTCCTTCACTCTCAACACGGTTGACAAGAACTGATGGCATTATGGAACACATCACAAAAATACCCAATGAAGCAGCACACAGAGGTACCATAAGACCAGTCAAAGGCCCTCAGACATCCACTTCGCCTGCCAGTCCTAAAGGACTACACACAGGAGGGACAAAAAGAATGGAGACCACCACCACAGCTCTGAAGACCACCACCACAGCTCTGAAGACCACTTCCAGAGCCACCTTGACCACCAGTGTCTATACTCCCACTTTGGGAACACTGACTCCCCTCAATGCATCAATGCAAATGGCCAGCACAATCCCCACAGAAATGATGATCACAACCCCATATGTTTTCCCTGATGTTCCAGAAACGACATCCTCATTGGCTACCAGCCTGGGAGCAGAAACCAGCACAGCTCTTCCCAGGACAACCCCATCTGTTTTCAATAGAGAATCAGAGACCACAGCCTCACTGGTCTCTCGTTCTGGGGCAGAGAGAAGTCCGGTTATTCAAACTCTAGATGTTTCTTCTAGTGAGCCAGATACAACAGCTTCATGGGTTATCCATCCTGCAGAGACCATCCCAACTGTTTCCAAGACAACCCCCAATTTTTTCCACAGTGAATTAGACACTGTATCTTCCACAGCCACCAGTCATGGGGCAGACGTCAGCTCAGCCATTCCAACAAATATCTCACCTAGTGAACTAGATGCACTGACCCCACTGGTCACTATTTCGGGGACAGATACTAGTACAACATTCCCAACACTGACTAAGTCCCCACATGAAACAGAGACAAGAACCACATGGCTCACTCATCCTGCAGAGACCAGCTCAACTATTCCCAGAACAATCCCCAATTTTTCTCATCATGAATCAGATGCCACACCTTCAATAGCCACCAGTCCTGGGGCAGAAACCAGTTCAGCTATTCCAATTATGACTGTCTCACCTGGTGCAGAAGATCTGGTGACCTCACAGGTCACTAGTTCTGGGACAGACAGAAATATGACTATTCCAACTTTGACTCTTTCTCCTGGTGAACCAAAGACGATAGCCTCATTAGTCACCCATCCTGAAGCACAGACAAGTTCGGCCATTCCAACTTCAACTATCTCGCCTGCTGTATCACGGTTGGTGACCTCAATGGTCACCAGTTTGGCGGCAAAGACAAGTACAACTAATCGAGCTCTGACAAACTCCCCTGGTGAACCAGCTACAACAGTTTCATTGGTCACGCATCCTGCACAGACCAGCCCAACAGTTCCCTGGACAACTTCCATTTTTTTCCATAGTAAATCAGACACCACACCTTCAATGACCACCAGTCATGGGGCAGAATCCAGTTCAGCTGTTCCAACTCCAACTGTTTCAACTGAGGTACCAGGAGTAGTGACCCCTTTGGTCACCAGTTCTAGGGCAGTGATCAGTACAACTATTCCAATTCTGACTCTTTCTCCTGGTGAACCAGAGACCACACCTTCAATGGCCACCAGTCATGGGGAAGAAGCCAGTTCTGCTATTCCAACTCCAACTGTTTCACCTGGGGTACCAGGAGTGGTGACCTCTCTGGTCACTAGTTCTAGGGCAGTGACTAGTACAACTATTCCAATTCTGACTTTTTCTCTTGGTGAACCAGAGACCACACCTTCAATGGCCACCAGTCATGGGACAGAAGCTGGCTCAGCTGTTCCAACTGTTTTACCTGAGGTACCAGGAATGGTGACCTCTCTGGTTGCTAGTTCTAGGGCAGTAACCAGTACAACTCTTCCAACTCTGACTCTTTCTCCTGGTGAACCAGAGACCACACCTTCAATGGCCACCAGTCATGGGGCAGAAGCCAGCTCAACTGTTCCAACTGTTTCACCTGAGGTACCAGGAGTGGTGACCTCTCTGGTCACTAGTTCTAGTGGAGTAAACAGTACAAGTATTCCAACTCTGATTCTTTCTCCTGGTGAACTAGAAACCACACCTTCAATGGCCACCAGTCATGGGGCAGAAGCCAGCTCAGCTGTTCCAACTCCAACTGTTTCACCTGGGGTATCAGGAGTGGTGACCCCTCTGGTCACTAGTTCCAGGGCAGTGACCAGTACAACTATTCCAATTCTAACTCTTTCTTCTAGTGAGCCAGAGACCACACCTTCAATGGCCACCAGTCATGGGGTAGAAGCCAGCTCAGCTGTTCTAACTGTTTCACCTGAGGTACCAGGAATGGTGACCTCTCTGGTCACTAGTTCTAGAGCAGTAACCAGTACAACTATTCCAACTCTGACTATTTCTTCTGATGAACCAGAGACCACAACTTCATTGGTCACCCATTCTGAGGCAAAGATGATTTCAGCCATTCCAACTTTAGCTGTCTCCCCTACTGTACAAGGGCTGGTGACTTCACTGGTCACTAGTTCTGGGTCAGAGACCAGTGCGTTTTCAAATCTAACTGTTGCCTCAAGTCAACCAGAGACCATAGACTCATGGGTCGCTCATCCTGGGACAGAAGCAAGTTCTGTTGTTCCAACTTTGACTGTCTCCACTGGTGAGCCGTTTACAAATATCTCATTGGTCACCCATCCTGCAGAGAGTAGCTCAACTCTTCCCAGGACAACCTCAAGGTTTTCCCACAGTGAATTAGACACTATGCCTTCTACAGTCACCAGTCCTGAGGCAGAATCCAGCTCAGCCATTTCAACAACTATTTCACCTGGTATACCAGGTGTGCTGACATCACTGGTCACTAGCTCTGGGAGAGACATCAGTGCAACTTTTCCAACAGTGCCTGAGTCCCCACATGAATCAGAGGCAACAGCCTCATGGGTTACTCATCCTGCAGTCACCAGCACAACAGTTCCCAGGACAACCCCTAATTATTCTCATAGTGAACCAGACACCACACCATCAATAGCCACCAGTCCTGGGGCAGAAGCCACTTCAGATTTTCCAACAATAACTGTCTCACCTGATGTACCAGATATGGTAACCTCACAGGTCACTAGTTCTGGGACAGACACCAGTATAACTATTCCAACTCTGACTCTTTCTTCTGGTGAGCCAGAGACCACAACCTCATTTATCACCTATTCTGAGACACACACAAGTTCAGCCATTCCAACTCTCCCTGTCTCCCCTGGTGCATCAAAGATGCTGACCTCACTGGTCATCAGTTCTGGGACAGACAGCACTACAACTTTCCCAACACTGACGGAGACCCCATATGAACCAGAGACAACAGCCATACAGCTCATTCATCCTGCAGAGACCAACACAATGGTTCCCAGGACAACTCCCAAGTTTTCCCATAGTAAGTCAGACACCACACTCCCAGTAGCCATCACCAGTCCTGGGCCAGAAGCCAGTTCAGCTGTTTCAACGACAACTATCTCACCTGATATGTCAGATCTGGTGACCTCACTGGTCCCTAGTTCTGGGACAGACACCAGTACAACCTTCCCAACATTGAGTGAGACCCCATATGAACCAGAGACTACAGCCACGTGGCTCACTCATCCTGCAGAAACCAGCACAACGGTTTCTGGGACAATTCCCAACTTTTCCCATAGGGGATCAGACACTGCACCCTCAATGGTCACCAGTCCTGGAGTAGACACGAGGTCAGGTGTTCCAACTACAACCATCCCACCCAGTATACCAGGGGTAGTGACCTCACAGGTCACTAGTTCTGCAACAGACACTAGTACAGCTATTCCAACTTTGACTCCTTCTCCTGGTGAACCAGAGACCACAGCCTCATCAGCTACCCATCCTGGGACACAGACTGGCTTCACTGTTCCAATTCGGACTGTTCCCTCTAGTGAGCCAGATACAATGGCTTCCTGGGTCACTCATCCTCCACAGACCAGCACACCTGTTTCCAGAACAACCTCCAGTTTTTCCCATAGTAGTCCAGATGCCACACCTGTAATGGCCACCAGTCCTAGGACAGAAGCCAGTTCAGCTGTACTGACAACAATCTCACCTGGTGCACCAGAGATGGTGACTTCACAGATCACTAGTTCTGGGGCAGCAACCAGTACAACTGTTCCAACTTTGACTCATTCTCCTGGTATGCCAGAGACCACAGCCTTATTGAGCACCCATCCCAGAACAGAGACAAGTAAAACATTTCCTGCTTCAACTGTGTTTCCTCAAGTATCAGAGACCACAGCCTCACTCACCATTAGACCTGGTGCAGAGACTAGCACAGCTCTCCCAACTCAGACAACATCCTCTCTCTTCACCCTACTTGTAACTGGAACCAGCAGAGTTGATCTAAGTCCAACTGCTTCACCTGGTGTTTCTGCAAAAACAGCCCCACTTTCCACCCATCCAGGGACAGAAACCAGCACAATGATTCCAACTTCAACTCTTTCCCTTGGTTTACTAGAGACTACAGGCTTACTGGCCACCAGCTCTTCAGCAGAGACCAGCACGAGTACTCTAACTCTGACTGTTTCCCCTGCTGTCTCTGGGCTTTCCAGTGCCTCTATAACAACTGATAAGCCCCAAACTGTGACCTCCTGGAACACAGAAACCTCACCATCTGTAACTTCAGTTGGACCCCCAGAATTTTCCAGGACTGTCACAGGCACCACTATGACCTTGATACCATCAGAGATGCCAACACCACCTAAAACCAGTCATGGAGAAGGAGTGAGTCCAACCACTATCTTGAGAACTACAATGGTTGAAGCCACTAATTTAGCTACCACAGGTTCCAGTCCCACTGTGGCCAAGACAACAACCACCTTCAATACACTGGCTGGAAGCCTCTTTACTCCTCTGACCACACCTGGGATGTCCACCTTGGCCTCTGAGAGTGTGACCTCAAGAACAAGTTATAACCATCGGTCCTGGATCTCCACCACCAGCAGTTATAACCGTCGGTACTGGACCCCTGCCACCAGCACTCCAGTGACTTCTACATTCTCCCCAGGGATTTCCACATCCTCCATCCCCAGCTCCACAGCAGCCACAGTCCCATTCATGGTGCCATTCACCCTCAACTTCACCATCACCAACCTGCAGTACGAGGAGGACATGCGGCACCCTGGTTCCAGGAAGTTCAACGCCACAGAGAGAGAACTGCAGGGTCTGCTCAAACCCTTGTTCAGGAATAGCAGTCTGGAATACCTCTATTCAGGCTGCAGACTAGCCTCACTCAGGCCAGAGAAGGATAGCTCAGCCACGGCAGTGGATGCCATCTGCACACATCGCCCTGACCCTGAAGACCTCGGACTGGACAGAGAGCGACTGTACTGGGAGCTGAGCAATCTGACAAATGGCATCCAGGAGCTGGGCCCCTACACCCTGGACCGGAACAGTCTCTATGTCAATGGTTTCACCCATCGAAGCTCTATGCCCACCACCAGCACTCCTGGGACCTCCACAGTGGATGTGGGAACCTCAGGGACTCCATCCTCCAGCCCCAGCCCCACGACTGCTGGCCCTCTCCTGATGCCGTTCACCCTCAACTTCACCATCACCAACCTGCAGTACGAGGAGGACATGCGTCGCACTGGCTCCAGGAAGTTCAACACCATGGAGAGTGTCCTGCAGGGTCTGCTCAAGCCCTTGTTCAAGAACACCAGTGTTGGCCCTCTGTACTCTGGCTGCAGATTGACCTTGCTCAGGCCCGAGAAAGATGGGGCAGCCACTGGAGTGGATGCCATCTGCACCCACCGCCTTGACCCCAAAAGCCCTGGACTCAACAGGGAGCAGCTGTACTGGGAGCTAAGCAAACTGACCAATGACATTGAAGAGCTGGGCCCCTACACCCTGGACAGGAACAGTCTCTATGTCAATGGTTTCACCCATCAGAGCTCTGTGTCCACCACCAGCACTCCTGGGACCTCCACAGTGGATCTCAGAACCTCAGGGACTCCATCCTCCCTCTCCAGCCCCACAATTATGGCTGCTGGCCCTCTCCTGGTACCATTCACCCTCAACTTCACCATCACCAACCTGCAGTATGGGGAGGACATGGGTCACCCTGGCTCCAGGAAGTTCAACACCACAGAGAGGGTCCTGCAGGGTCTGCTTGGTCCCATATTCAAGAACACCAGTGTTGGCCCTCTGTACTCTGGCTGCAGACTGACCTCTCTCAGGTCTGAGAAGGATGGAGCAGCCACTGGAGTGGATGCCATCTGCATCCATCATCTTGACCCCAAAAGCCCTGGACTCAACAGAGAGCGGCTGTACTGGGAGCTGAGCCAACTGACCAATGGCATCAAAGAGCTGGGCCCCTACACCCTGGACAGGAACAGTCTCTATGTCAATGGTTTCACCCATCGGACCTCTGTGCCCACCAGCAGCACTCCTGGGACCTCCACAGTGGACCTTGGAACCTCAGGGACTCCATTCTCCCTCCCAAGCCCCGCAACTGCTGGCCCTCTCCTGGTGCTGTTCACCCTCAACTTCACCATCACCAACCTGAAGTATGAGGAGGACATGCATCGCCCTGGCTCCAGGAAGTTCAACACCACTGAGAGGGTCCTGCAGACTCTGCTTGGTCCTATGTTCAAGAACACCAGTGTTGGCCTTCTGTACTCTGGCTGCAGACTGACCTTGCTCAGGTCCGAGAAGGATGGAGCAGCCACTGGAGTGGATGCCATCTGCACCCACCGTCTTGACCCCAAAAGCCCTGGAGTGGACAGGGAGCAGCTATACTGGGAGCTGAGCCAGCTGACCAATGGCATCAAAGAGCTGGGCCCCTACACCCTGGACAGGAACAGTCTCTATGTCAATGGTTTCACCCATTGGATCCCTGTGCCCACCAGCAGCACTCCTGGGACCTCCACAGTGGACCTTGGGTCAGGGACTCCATCCTCCCTCCCCAGCCCCACAACTGCTGGCCCTCTCCTGGTGCCGTTCACCCTCAACTTCACCATCACCAACCTGAAGTACGAGGAGGACATGCATTGCCCTGGCTCCAGGAAGTTCAACACCACAGAGAGAGTCCTGCAGAGTCTGCTTGGTCCCATGTTCAAGAACACCAGTGTTGGCCCTCTGTACTCTGGCTGCAGACTGACCTTGCTCAGGTCCGAGAAGGATGGAGCAGCCACTGGAGTGGATGCCATCTGCACCCACCGTCTTGACCCCAAAAGCCCTGGAGTGGACAGGGAGCAGCTATACTGGGAGCTGAGCCAGCTGACCAATGGCATCAAAGAGCTGGGTCCCTACACCCTGGACAGAAACAGTCTCTATGTCAATGGTTTCACCCATCAGACCTCTGCGCCCAACACCAGCACTCCTGGGACCTCCACAGTGGACCTTGGGACCTCAGGGACTCCATCCTCCCTCCCCAGCCCTACATCTGCTGGCCCTCTCCTGGTGCCATTCACCCTCAACTTCACCATCACCAACCTGCAGTACGAGGAGGACATGCATCACCCAGGCTCCAGGAAGTTCAACACCACGGAGCGGGTCCTGCAGGGTCTGCTTGGTCCCATGTTCAAGAACACCAGTGTCGGCCTTCTGTACTCTGGCTGCAGACTGACCTTGCTCAGGCCTGAGAAGAATGGGGCAGCCACTGGAATGGATGCCATCTGCAGCCACCGTCTTGACCCCAAAAGCCCTGGACTCAACAGAGAGCAGCTGTACTGGGAGCTGAGCCAGCTGACCCATGGCATCAAAGAGCTGGGCCCCTACACCCTGGACAGGAACAGTCTCTATGTCAATGGTTTCACCCATCGGAGCTCTGTGGCCCCCACCAGCACTCCTGGGACCTCCACAGTGGACCTTGGGACCTCAGGGACTCCATCCTCCCTCCCCAGCCCCACAACAGCTGTTCCTCTCCTGGTGCCGTTCACCCTCAACTTTACCATCACCAATCTGCAGTATGGGGAGGACATGCGTCACCCTGGCTCCAGGAAGTTCAACACCACAGAGAGGGTCCTGCAGGGTCTGCTTGGTCCCTTGTTCAAGAACTCCAGTGTCGGCCCTCTGTACTCTGGCTGCAGACTGATCTCTCTCAGGTCTGAGAAGGATGGGGCAGCCACTGGAGTGGATGCCATCTGCACCCACCACCTTAACCCTCAAAGCCCTGGACTGGACAGGGAGCAGCTGTACTGGCAGCTGAGCCAGATGACCAATGGCATCAAAGAGCTGGGCCCCTACACCCTGGACCGGAACAGTCTCTACGTCAATGGTTTCACCCATCGGAGCTCTGGGCTCACCACCAGCACTCCTTGGACTTCCACAGTTGACCTTGGAACCTCAGGGACTCCATCCCCCGTCCCCAGCCCCACAACCACCGGCCCTCTCCTGGTGCCATTCACACTCAACTTCACCATCACTAACCTACAGTATGAGGAGAACATGGGTCACCCTGGCTCCAGGAAGTTCAACATCACGGAGAGTGTTCTGCAGGGTCTGCTCAAGCCCTTGTTCAAGAGCACCAGTGTTGGCCCTCTGTATTCTGGCTGCAGACTGACCTTGCTCAGGCCTGAGAAGGATGGAGTAGCCACCAGAGTGGACGCCATCTGCACCCACCGCCCTGACCCCAAAATCCCTGGGCTAGACAGACAGCAGCTATACTGGGAGCTGAGCCAGCTGACCCACAGCATCACTGAGCTGGGACCCTACACCCTGGATAGGGACAGTCTCTATGTCAATGGTTTCACCCAGCGGAGCTCTGTGCCCACCACCAGCACTCCTGGGACTTTCACAGTACAGCCGGAAACCTCTGAGACTCCATCATCCCTCCCTGGCCCCACAGCCACTGGCCCTGTCCTGCTGCCATTCACCCTCAATTTTACCATCACTAACCTGCAGTATGAGGAGGACATGCGTCGCCCTGGCTCCAGGAAGTTCAACACCACGGAGAGGGTCCTTCAGGGTCTGCTTATGCCCTTGTTCAAGAACACCAGTGTCAGCTCTCTGTACTCTGGTTGCAGACTGACCTTGCTCAGGCCTGAGAAGGATGGGGCAGCCACCAGAGTGGATGCTGTCTGCACCCATCGTCCTGACCCCAAAAGCCCTGGACTGGACAGAGAGCGGCTGTACTGGAAGCTGAGCCAGCTGACCCACGGCATCACTGAGCTGGGCCCCTACACCCTGGACAGGCACAGTCTCTATGTCAATGGTTTCACCCATCAGAGCTCTATGACGACCACCAGAACTCCTGATACCTCCACAATGCACCTGGCAACCTCGAGAACTCCAGCCTCCCTGTCTGGACCCATGACCGCCAGCCCTCTCCTGGTGCTATTCACAATTAACTTCACCATCACTAACCTGCGGTATGAGGAGAACATGCATCACCCTGGCTCTAGAAAGTTTAACACCACGGAGAGAGTCCTTCAGGGTCTGCTCAGGCCTGTGTTCAAGAACACCAGTGTTGGCCCTCTGTACTCTGGCTGCAGACTGACCTTGCTCAGGCCCAAGAAGGATGGGGCAGCCACCAAAGTGGATGCCATCTGCACCTACCGCCCTGATCCCAAAAGCCCTGGACTGGACAGAGAGCAGCTATACTGGGAGCTGAGCCAGCTGACCCACAGCATCACTGAGCTGGGCCCCTACACCCTGGACAGGGACAGTCTCTATGTCAATGGTTTCACACAGCGGAGCTCTGTGCCCACCACTAGCATTCCTGGGACCCCCACAGTGGACCTGGGAACATCTGGGACTCCAGTTTCTAAACCTGGTCCCTCGGCTGCCAGCCCTCTCCTGGTGCTATTCACTCTCAACTTCACCATCACCAACCTGCGGTATGAGGAGAACATGCAGCACCCTGGCTCCAGGAAGTTCAACACCACGGAGAGGGTCCTTCAGGGCCTGCTCAGGTCCCTGTTCAAGAGCACCAGTGTTGGCCCTCTGTACTCTGGCTGCAGACTGACTTTGCTCAGGCCTGAAAAGGATGGGACAGCCACTGGAGTGGATGCCATCTGCACCCACCACCCTGACCCCAAAAGCCCTAGGCTGGACAGAGAGCAGCTGTATTGGGAGCTGAGCCAGCTGACCCACAATATCACTGAGCTGGGCCCCTATGCCCTGGACAACGACAGCCTCTTTGTCAATGGTTTCACTCATCGGAGCTCTGTGTCCACCACCAGCACTCCTGGGACCCCCACAGTGTATCTGGGAGCATCTAAGACTCCAGCCTCGATATTTGGCCCTTCAGCTGCCAGCCATCTCCTGATACTATTCACCCTCAACTTCACCATCACTAACCTGCGGTATGAGGAGAACATGTGGCCTGGCTCCAGGAAGTTCAACACTACAGAGAGGGTCCTTCAGGGCCTGCTAAGGCCCTTGTTCAAGAACACCAGTGTTGGCCCTCTGTACTCTGGCTGCAGGCTGACCTTGCTCAGGCCAGAGAAAGATGGGGAAGCCACCGGAGTGGATGCCATCTGCACCCACCGCCCTGACCCCACAGGCCCTGGGCTGGACAGAGAGCAGCTGTATTTGGAGCTGAGCCAGCTGACCCACAGCATCACTGAGCTGGGCCCCTACACACTGGACAGGGACAGTCTCTATGTCAATGGTTTCACCCATCGGAGCTCTGTACCCACCACCAGCACCGGGGTGGTCAGCGAGGAGCCATTCACACTGAACTTCACCATCAACAACCTGCGCTACATGGCGGACATGGGCCAACCCGGCTCCCTCAAGTTCAACATCACAGACAACGTCATGCAGCACCTGCTCAGTCCTTTGTTCCAGAGGAGCAGCCTGGGTGCACGGTACACAGGCTGCAGGGTCATCGCACTAAGGTCTGTGAAGAACGGTGCTGAGACACGGGTGGACCTCCTCTGCACCTACCTGCAGCCCCTCAGCGGCCCAGGTCTGCCTATCAAGCAGGTGTTCCATGAGCTGAGCCAGCAGACCCATGGCATCACCCGGCTGGGCCCCTACTCTCTGGACAAAGACAGCCTCTACCTTAACGGTTACAATGAACCTGGTCCAGATGAGCCTCCTACAACTCCCAAGCCAGCCACCACATTCCTGCCTCCTCTGTCAGAAGCCACAACAGCCATGGGGTACCACCTGAAGACCCTCACACTCAACTTCACCATCTCCAATCTCCAGTATTCACCAGATATGGGCAAGGGCTCAGCTACATTCAACTCCACCGAGGGGGTCCTTCAGCACCTGCTCAGACCCTTGTTCCAGAAGAGCAGCATGGGCCCCTTCTACTTGGGTTGCCAACTGATCTCCCTCAGGCCTGAGAAGGATGGGGCAGCCACTGGTGTGGACACCACCTGCACCTACCACCCTGACCCTGTGGGCCCCGGGCTGGACATACAGCAGCTTTACTGGGAGCTGAGTCAGCTGACCCATGGTGTCACCCAACTGGGCTTCTATGTCCTGGACAGGGATAGCCTCTTCATCAATGGCTATGCACCCCAGAATTTATCAATCCGGGGCGAGTACCAGATAAATTTCCACATTGTCAACTGGAACCTCAGTAATCCAGACCCCACATCCTCAGAGTACATCACCCTGCTGAGGGACATCCAGGACAAGGTCACCACACTCTACAAAGGCAGTCAACTACATGACACATTCCGCTTCTGCCTGGTCACCAACTTGACGATGGACTCCGTGTTGGTCACTGTCAAGGCATTGTTCTCCTCCAATTTGGACCCCAGCCTGGTGGAGCAAGTCTTTCTAGATAAGACCCTGAATGCCTCATTCCATTGGCTGGGCTCCACCTACCAGTTGGTGGACATCCATGTGACAGAAATGGAGTCATCAGTTTATCAACCAACAAGCAGCTCCAGCACCCAGCACTTCTACCTGAATTTCACCATCACCAACCTACCATATTCCCAGGACAAAGCCCAGCCAGGCACCACCAATTACCAGAGGAACAAAAGGAATATTGAGGATGCGCTCAACCAACTCTTCCGAAACAGCAGCATCAAGAGTTATTTTTCTGACTGTCAAGTTTCAACATTCAGGTCTGTCCCCAACAGGCACCACACCGGGGTGGACTCCCTGTGTAACTTCTCGCCACTGGCTCGGAGAGTAGACAGAGTTGCCATCTATGAGGAATTTCTGCGGATGACCCGGAATGGTACCCAGCTGCAGAACTTCACCCTGGACAGGAGCAGTGTCCTTGTGGATGGGTATTCTCCCAACAGAAATGAGCCCTTAACTGGGAATTCTGACCTTCCCTTCTGGGCTGTCATCCTCATCGGCTTGGCAGGACTCCTGGGAGTCATCACATGCCTGATCTGCGGTGTCCTGGTGACCACCCGCCGGCGGAAGAAGGAAGGAGAATACAACGTCCAGCAACAGTGCCCAGGCTACTACCAGTCACACCTAGACCTGGAGGATCTGCAATGA"
  }

Example response body

   Status Code: OK (200)
   
   {
      "age": 45,
      "gene": "MUC16",
      "mutation_positions": [
          332
      ],
      "mutations": [
          "G > A"
      ],
      "pps": [
          0,
          0,
          0,
          0,
          0,
          1,
          0,
          0,
          0,
          -1,
          0,
          0,
          0,
          0,
          0,
          0,
          0,
          0,
          0,
          0
      ],
      "probability": [
          0.06276734519981175,
          0.9372326548001882
      ],
      "status": "FOUND",
      "tier": 1,
      "tumor": "metastasis"
  }

pps - protein primary structure

    The pps attribute contains the changes of amino-acid sequence with order of 'A', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'K', 'L', 'M', 'N', 'P', 'Q', 'R', 'S', 'T', 'V', 'W', 'Y' respectively

probability

    array location 0 - confidence level for not having melanoma
    array location 1 - confidence level for having melanoma

Response Status
200: Request Processed Successfully.
400: Bad Request
500: Internal Server Error

Melanoma detection using Dermoscopic Image

Method: POST
End point: https://melanoma-detection-tool-api.herokuapp.com/predict-melanoma/dermoscopic-images
Request body format: Form-data
Required params in request body: image (Needs to be passed as a file)

Example request body

   { 
    	"image" : ISIC_0024554.jpg
   }

Example response body

   Status Code: OK (200)
   
   [
        "Positive",
        90.53,
        [ 0, 1, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0 ]
   ]

array values description

    array location 0 - Presence of Dermoscopi Feature Asymmetry
    array location 1 - Presence of Dermoscopi Feature Border Irregularity
    array location 2 - Presence of Dermoscopi Feature Colour Variation
    array location 3 - Presence of Dermoscopi Feature Diameter
    array location 4 - Presence of Dermoscopi Feature Globules
    array location 5 - Presence of Dermoscopi Feature Blotches
    array location 6 - Presence of Dermoscopi Feature Milky-red Areas
    array location 7 - Presence of Dermoscopi Feature Rosettes
    array location 8 - Presence of Dermoscopi Feature Regression Structure
    array location 9 - Presence of Dermoscopi Feature Blue-white Veil
    array location 10 - Presence of Dermoscopi Feature Atypical Network
    array location 11 - Presence of Dermoscopi Feature Irregular Streaks

Response Status
200: Request Processed Successfully.
400: Bad Request
500: Internal Server Error

melanoma-detection-api's People

Contributors

amesh-jayaweera avatar chinthakaj98 avatar dilinipeirs avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.