actctgacccttcaaagatacagaattcacctgctcatatgaggcctccaatacacatacagaagaggactgctgggagaactctacaagtcccctttcccaactggagggcatttcatctaaggtcactccctttgagtcctgtgagtctctcagctcccaggtctctggtacattctagagggttttctcacctcctacctcacaaagttgcctgtttacattctttttgctgatcttcatcaatgcactcctgtttcacaaccccccacagtacttgatcaagttcatctcttcccctccgtgtgtggtttctcacccaggtctctccctcccccttcttgtagtaattgtttaaccttctTAACATTTCTAATTATTTTTATCATAAAGATAATTGAATTTTTTGATTCATTATCTTATAAACTTCCCAATGCACTAGATACAATTATCGAAGGTACATTTGTTTGATTTTATTTCACTTCATTTTAGTGTTGAGGTAGGCACTTAGTATGTTATGTATTCTCTAGGAAGTGATAGAGTGTTGCGGTTCAGCATTCCGTGTTGGTGCTAATACAGGTATGTTTAAACATACCTGGCTTTAATTGTTCTTCGGAAAATAGACCCAAAAAAACTCCTATAACCACAATAAAATTTCCACAGGCAGTTCTGAGAGATGGAAATATTTCCTGTTCACTTATAAAATTCATTGAAAGAAAGTATATTTGTTTCTTGAACCAAAATAAACTGCTACCTGAGAGGAAGGATAAAATGACTGATTGGCCCCTTTCTCTTTCCCAGGACCAGCCCCTACTCTCTGTTcccattgtacttgatgctccagtacagtggaattccaggacaaagaaatgggagtgagtgggtaggggatcagggcagggggaagggaggggaaaggctaaaggtgactgttatgatagcatttgaaatgtaaatggagaaaataactactaaaattaaaaaaaaaTTTAAAAAAACATAAGTGTATTTACATATGTGCACAGGGATATGTGGCTAACAACCACATAATATAAAATTATCATTCCTTTCCAGGACTGTCTTTtttgtttgattgtttgttttttgttttgtttgtttgttttgtattgtttgtttTTTATTATAAGTATTTTTtttttttgtatatctattagtcctggaaattactttgtaaactagactggtctcaatttgagatctgcctacttctccctccaaaaacttcgaaatatgtgtgtgcccccaccacgtggctTCAAAATTATTTTAGACTTAGTGGAGAAGGTCCATTATTGTTTCTTGTTAGGATATTTTAAAATCATCAAGATGTCATTTTTCCTTAATATATTTATAAGATTAAATCCATTCCTATAAAAATATGTCAGATATTTTTGGAGACAGGCAAGTTTGCAAGAAGCATCATTTAAAAATACTtctggagccagtgccttgagcaggccatgcatgcaaactctgaaggcagccccacaacaccgagaggctgcttcaatccaaggtactccaacattctaaggatcagataatcagacaggaggaagaacatctgtcatcaacacatggagtagctggaatcagaaggatccaggcatgcaggaactgtgccggacaagtggcatgggttatttctattctgtcttggccaaggccctgaacagtccttggaagaaaactcagcagccagccccataacacccagagttctaacatggccaggtgcagaggatctcaggatcccaggatcttggtcccaccaggatttcatggtcccaaaggcaacttgactcccagaagatcagacagaccaaggatatcTACCTTTTCTATAAACTTCTTTATCACCTGTGAATACAGCCGCAAACCTAGTTACATTTTTTTCAAGGCTTCTATCTCGTCAATTTTCTCTTTCCTCAGCCTCTCTCTTTTTTATTTGTCTTTTTTCTTTTTCAGTCTCAATCTCtttttaatatattttattaggtatttttttcatctaaatttccaacactatcccaaaagtctcgcataccctccccctcccccactcccttacccactcactaccactttttgacactggcgttcccctgtactggggcataattagtgtgcatgcccaatcgggctctctttccagggatggcctactaggcaatcttttgatacatatgcagctacagtcaagagctttggggtactggttagttcataatgtttttttacctagaggattgcagatccctttagctgcttggatattttctctagctcctccattggggccatgtgatccatccaatagattactgtgagcatccacttctttgctaggccccggtataatctcacaagagacagctatatcagggtccactcagcaaaaccttgcaagtgtatggagtggtgtcagtgtttggagactgattagtggatggatccctgcatatgacaatctctagaaggtccatccttttgtctatgctccaaactttgtctctgtaactactcccatgggtgttttgtttccaattctaagaaggggcaagtgtccacactttggttttcgttcttcttgagtttcatgtatttggcaaattgtgtcttataccttggggttattctaggtttcagggctaatatccacttattagtgagtacatatcattagcattcttttgtgattgagttacctcactcaggatgatgctctccaggtccaaccatttgcctataaatttcataaactcattcttttcaatagctgtactattagtagtagtactccattgtgtaaatgtaccacaattttgtaaacattttctgttgacaggcatctggattctttccagcttctggctactataaataaggctgctctgaacatagtggagcatgtgtcttactagttggaacagcttctggatatatgcccaggacaggtattgtgtgagcctatggtagtacaatttccaattttctgatttccagagttgatttaaaacttgcaattccaacaacaatggaggagttttctgctttctccacatccttgccagcatctgctgtcatctgaatatttgatcttatccattctgtctggtgtgagatggaatctcagggttgttttgatttacatttcactgctgattaaggatggtgaacattgtttcaggtgcttcttagccatttggtattcctcaggtgagaattctttctttagctctgagccccatttttaaatggagttatttgattttctggagtccaccttctgagttctttatatatatttgatattactcccctatctaatttaggatagtgaaagatcctttcacaatctgttggtgaccttGATTTAgtttccaggatctgtccattaatgaaggaggggtgttgaagtcttccaatattattgtgtgtggtacaatgtgtgttttgagtttactaaagtttcttttatcaatgtggatgtcattgcatttggagtataaatgtttagatttgggagtccattttggtaaatattaactttaatgaatatgaagtttccttccttgacttttttttataactttgggttgaaagtcaattttatttgatattagaatggctgctccaccttatttcttcggatcatttgcttggaaagttcttttccagccttttagtctgaggtaatgtctgactttgtccttggtgtttgtttctggtgtgctgaatattgcttacacatccattttgttattctatgcctttttactggtgaactgagtccactgatattaagagatactaaggaaaaattcttgttgcttcctgttatttttgttattagagttggaattttgttcatgtagctatcttcttttaggtttccttcaagtttaatttcttgctttttcttgagtgtaatttccctcgttatattggaattgtctctttattatcgtttgaagtgctggatgcattggaagatattttgtaaatatggttttgtcacagaataccttgttgtctcaagctatgttaaaagagttttgcttcatatagtagtcttggctggcatttttgctctcttacattctgtatgacatctgccctagattttctggctttcttagtctaagggaaaagttatgtgtaatcctgatagatcttgctttatatattacttgaccattttcccttactgcttttaatattctttctttgttttgtgcatttggtgttttgactattatatgatggcaagatttttttttctggttcaaataatttggcgttctgtaggcttcttgtatattcatgagcatatctttatttaagttagggaggtttttttttctataatattggtaaagatattcaatggccctataatttggaaaacttacttctcatctatacctatACCGAATATCATGTATGTAATTACGTCATTTCTCAAAGCTGTTTAAAAAATTCACATTGGCAGTATTTCCTGAGAAATTCAAATCATTAAAACTTTATTCCCTTTTACTAATATAGCATATTATGTTTCCATTTTCTGTTGTCCACATAGTACAGAGCCCAGCATTTGAAAAAGATGAGAATATATCACCTCAGGTAGAAACAGATGAAGATACAGTACAATATTTTCAATTTTTTCCCATTTCAATAGAGTACTTCAAAAGTGGTGTTTGTGATCCCTTGACTGGAGAAGTCGATTCAGGAAAAAGAGCAATTCAGGGTCAGATGCTCTTATATGTGTAGTTGAAGACCAGATTGTGGTCCTTTAGACCTTGTGATCACAAAAAAATAGCAACGAGTACAATACAACCACCTTCATGAGATGTTTCCATATATACACACAAAGAAAAGGAGAACCATTATAAAAATAAGAGAGGGACCATTTGGGAAGAAGAAGGATCTCAGCAAGGGTAGTACAGTTATGAAGAAGTGCTGTGGGGTGTAAATGTATAAATTGTTTAAAGTAAATATTACAAGTTTTTTGGAATACTACCATGTATTTTATATGGATTTAACATTTGGTTCAAACCaaatattatatatttattataaataattgaaataattttCTGTGTAAAGTTTTGTGTGTTGTAGAAAAAATATCCTATtgggagattctaacttaaagtatatctcccagtaaggtaaagcccctagacattccccaagcttgttttccctgatctatttaaatacagctaggaagaagctctttgttctctatagccagcaataaagcatttttttttatactttacaaccagagatgcctgccttcctttgccaaggacaaggagataaaaattcagaaagaagtcactccccagttctgaggaagttccagggatacctggagatctcctatcaGGGTGCCAAGTGAGAGTGTGCTCACTCGGCTGTCTGTTTCTGTTACTGGGTGCCAAGTGAGTGTGTGCTCTCTCGGCCATCTTATTGGGGCCTGTTCTTGGTTATTGTAATCTTTTTGTGTGTATATATTGGTttttcccctgtatgtaactctgatgatgggaccgactattagcatgccccttggactgaccctagtgcacagtactgaaattaagactaagactcacattttctcggtggatgtctgaaatagattttagagaactttgtgctctacggaatggccagctttgatgttagttggccactagagggcacccttggtttggttctgttttcagctcttaaagttgttttacagaggggaccagggtctcagccagattgagtgccctacattctcatctagaaaaaattagcacaggatcccccctctcctatcgtgtttaaagccttgggttcaaaagaatagtccagggtccccagtcctggccctctgccatccagagagggaaaataaaaagttaaatctggcaccggttaaactgcagccatcggtttctcccaagatctatccagagttagaagaacctccaaaatggcactgcaccccacctgcatattcccaactggtccccccaagaactctcaacagggtgccactagatatttggggagggaccagttgctaaagcccaagaccagcgagctcaaagcccagagggaccagactcaaccatcgcactgcctttgtgtacttatgaccctcatccagcggaccccagacaactgcagccccttcagtaatggcctttttcctcctctgatctctataactggaaggcaaatcacaatccccttcgttgaaaacccctctagccttgctaatctaaaggaatctctcatattctctcttcagcctatttgggatgactgtcagcagcttttacaggttctttcaccacagaggagaaggagaggattctgagaggaaagaaagagcatactgggggccaattgactactaataaaacttctgaatgaaatagatgcagccttccctctgacatgtcctgataggactgaccatatggagcaattgacaattttctgctgggctctgataataggactgaaaggggctggcaggtgccccaccaatttgaccaaggtaagagagatcctacaagagaaaaaggagcccccagcagtgtttttagagtacctcttaaaggtatagaagtgttacactacctttgaccctacttcagtgtgccagcaggtgacaggtgtcatggcttctatagggcagtcctcttctgaaattaggaaaaggttactgggtctagagagtctgaaaacattatctttacaacatctgtttaaggaggcagagaaagtgtaccataagagagagactgaCAAgccagcacaagggcacattgggctcggagtctgcagacacccctaaggtccccacaagaccctcaataggatcataagacctctgttgaatgtaacacaacctctgctccaatccaatctcacaggatctgagactgcattaattagggaagcagaaaaactggcctgacaatggtctcaagtccctctgatctgtgccagcacctgggcaacatattgggcagagtctgaggacagccccaaggtcctcacagaaacatccatgagatcttaagacctttggtgagtggaaaacaacttccgctccaatcctatcatgcaggacttgtgactgcattcattagggaagcagagaaaccggtatgatcagggtcacaagtcccttccagtccatgacagcatcgggcaccttgtgggcagagtctgtggacaccccaaaggtccccacaggactctccacgggaacttagtacctctagtgagtggatcacaacatctgccaggaggaaggttcgaacaccagatatctgggtcccttctctgcaagtggagatcttgcctgcatagagtactctgaacactgaaactcaggagaaaactagtctcccaggtctgctgatagaggattacataatcatctgaggaacaagatataaccagagacaattataacaactaactccagagattaccagatgatgaaaggcaaacataagaatcttactaacagaaaccaagaccactcaccatcataagaattacagcactcccacctcatccagtcctggaaacgcaaaaacacccgaaaaggtagtcccatatttaaaagcatatctcaggttgaaggtagaggacatcaagaaggactttaaaaactcacttaaagaaatacaggagaacactgctaaataggtagaaccttaagaggaagcacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacttaaagaattgaaggaaaacacgaccaaacaggtgatggaattgagtaaaaccatccaagacctaaaaagtgaagtagacacaataaagaaaacccaaagtaaggcaacactggagatagaatacctaggcaagaaatctggaaccatagatgcgagcatcagcatcagaatacaagacatggaagagagaatgacagatgcagaagattccatagagaatattggaacaacaatcaaataaaatacaaaatgcaaaagatgttatctcaaatatccaggaaatccaggacacaatgtgaagtccaaacctactggtaataggagtagatgagaatgaagattttcaagttaaagggccagcacatatcttcaaaaaaattatagaagaaaacttgtcaaacctaaagaaacacatgcccatgaatataaaaaaagcctacagaattccatatagactggaccagaaaagaaattcctcctgacacataataatcagaagaagaaatgcactaaatagagatatactgttaaaagtagtaagggaaaaaggtcaggtaacatataaaggcaggcctatcagaattacaccagacttttcaccagagactatgaaagacagaatatcctggacagatgttatacagatacttagagaacacaaatgccagcccaggctattaaacccagccaaactctcaattaccacagatggagaaaccaaagtatttcacgataaaaaacaaattcacacattaactttccatgaatccagcctttcaaagaataataacagaaaaaaaaaaccaatacaaggacaggaacaacgccctagaaaaagcaagaaagtaatccctcaacaaaccaaaaagaagacagccacaagaacagaatgcaaactctaacaacaaaaataatcgaggcaacaattacatttccttaatatctcttcatatcaatggattcagttccccaataaaaagatatagactggctataaaaacaggacccaatagtctgctgcttacaggaaacccatctcagggaaaaagacagacactgtctcagagtgaaaggctagaaaataattttccaagcaaatggtctgaagaaatcagctggagtaaccattcaaatatcgattaaaattgatttccaacctaaagttatcaaaaaagacaaagaaggacacatactcatcaaagttaaaatcttccaagaggaactctcaattctgaatatctatgctccaaatgaaaaggcagtcccattcattaaagaaagctcaaagcacacattgcagctcacacaataatagtgggagacttaaaaaaccacttttatcaatggacataccttggaaacagaaactaaacagggacacagtgaaactaaaagaagttattaaacaaatggacttaatagatatctacagaacgttttatcctgaaacaaaaggatataactttttctcagcacatcatggtaccttctccaaaattgaccatataattgatcataaaacagacctcaactgataaaaaatattgcagttgtccaaaacatcctatcagaccaccaaacactaaggatgattgatcttcaataacaacataaataatggaaagccaatgtttacgttgataatgaacaatagtcttatcagtgataccttggtcaaggaggaataaagaaggaaattaaagacatattagagtttaatgaaaataaagccagaacattccctaacttatgagactcaatgaaatcattactaaaagggaaactcacagatttgagtgcctcaaaaagaaaccagagagagcacatacaagcagcttgaaaacacataaaaaatctccagaattaaggaagcaaattaactcaagaggagaagatgtaaggaaataataaaactcagtggtgaaattaaccaagtggaaacaagaactacttaaagaatcaaccaaataggagctggttctttgagaaaatcaacaagatagataaacccttagctagcatcccttaaggcacagagacagcatcctaattaacaaaatcagaattgaaaagagagacataaaaacagatcctgacgaaatccaaaacaccatcagatcNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN