acacgcattcattataaaattcttggaaagatcaggaattcaaggcccatacctaaacatgctaaaagcaatctacagcaaaacagtagccagcatcaaagtaaatggtgagaagcttgaagcaatcccactaaaatcaaggactagacaaggctgcccactctctccctacctatttaacattgtacttgaagtcctagccagagcaattagacaacaaaaggagatcaaggggatacaaattggaaaggaagaagttaaattatcactttttgtagatgacatgattgtatatatacgtgaccctaaaaattccaccagagaactcctaagcctgataaacagcttcagtgaagtagctggatatacaattaactcaaacaagtcaatggcctttctctacacaaaagacaaacaggctgagaaagaaattagggaaacaacacccttctcaatagccacaaataatataaaatacctaggcatgactctaactaaggaagtgaaagatctgtatgacaagaacttcaagtctctgaagaaagaaattaaagtagatctcagaaatggaaagatctcccatgctcattgattggcaggatcaatatagtaaaaatggctatcttgccaaaagcaatctacagattcaatgcaatccccatcaaaattccaactcaattcttcaacgaattagaaagggcaattggcagattcatctggaataacaaaaaacctagggtagcaaaatctcttctcaagaataaaagaacctctggtggaatcaccatgcccaacctaaagatttactacagagcaattgtgataaaaactgcttggtactggtatagcgacagacaagtagaccaatggaacagaattgaagacccagagatgaacccacacacctatggtcacttgatctttgacaagggagctaaaaccatccagtggaaaaaagacagcattttcaacaaatggtgctggcacaactggctgttatcatgtagaagatttcgaattgatccattcctatctccttgtactaaggtcaaatctaagtggattaaggatttccacataaaaccagagacactgaaacttatagaggagaaagtagggaaaagcctcgaagatatgggtacaagggaaaaattcctgagtagaacagcaatgccttgtgctgtaagattgagaatcgataaatgggacctcataaaattgcaaagcttctgcaaggcaaaagacaccgtcaataagatataaagaccaccaacaaattgggaaaagatatttacctatcccaaatcggacaggggactaatatccaatatatataaagaactcaagaaggtagactccataaaatcaaacaaccccattaataaatggggctcagaactgaacaaagatttctcacccgaggaataccgaatggcagagaagcacctgaaaaaatgttcaacatccttaatcatcagggaaatgcaaatcaaaacaacccttagattctccctcacaccagtcagaatggctaagatgaaaaattcaggtgatggcagatgctggcgaggatgtggagaaagaggaacactcctccattgttggtgggattgcaagcttgtacaaccactctggaaataagtctggtggttcctcagaaaattggacatagtactaccggaagatcctgcaatacctcttctgggcatacatccagaagatgttccaacccgtcagaaggacacatgctccactatgttcatagcagccttatttataattgccagaatctggaaagaagccagatgcccctcaacagaggaatggatactgaaaatgtggtacatttacacaatggagtactactcagctattaaaaagaatgaatttatgaaattcctagccaaatggatggacctggcgggcatcatcctgagtgaggtaaaccaatcacaaaggaactctcacaatatgtactcactgataagttgatattagcccagaaacttaggatacccaaaatatgagatataatttgctaaaaacattaaactcaagagaacgaagaccaaagtgtgtatactttgccccttcttagaataggaaacaaaatacccatggaaggagttacagagacaaaatttggaagtgtgatgaaaggatggaccatctagtgattgccatatccagatatccatcccatgatcagcttccaaacgctgacaccattgcatacactagcaagattttgctgaaaggacccagatatagctgtctcttgtgagactatgccagggcctagcaaacacagaagtgaatgctcacagtcaactattgaatggaccacagggcccccaatggaggaactagagaaagtacccaaggaactaaagggaactgaaaccctataggtggaacaacaatatgaactaagcagtaccccggagctcttgtctctagctgcatatgtatcaaaagatggcctagtcggccatcactgcaatgagaggcccattggacttgcaaactttatatgcccaagtacaggggaacgccagggccaaaaagggggagtgggtggataggggagtgggggtgggtgggtatgggggacttttggtatagcattggaaatgtaaatgagctaaatacctaataaaatatggaaaaaaaAGAAAGAAAGAAAGATGAACTAAATAAGACACAGATCCTTCTGGAGTAAGGCAGCCACTGTGTCTCTGTAGAGGGGGATGCTGAGTGTCAACACACATGCAAAACAACATCACTTGAATACAAATTGATAGGCCTGATTTGAGTAGTATAAAAAAAACCCAAGGTAAAAGTTCATCAAATGAATTTGTAACTCCTGATCTCAAGTACCCGTCAATAATAATTTTTGAACACAGTTGTGTACTTAATTGCCTTTGTTTATGTTTTCAATTATATTTTTGAAATCTCATTGGCTCTAACACATTCTTGCATGCTGTATGATCAAGTTGCAATTACATAAAATTAGAAATTCCTATATCTGTGGGCTGGACTGTCTTCAAGTCTTCTAGCTGAGACCACTAAGGTGCAGAAACAGGTCATCCCTaaaaaaaaaaaaaaaaaaaaaaaaaagaaaataacagagacacagtaaaacttacagaagtcttgacccaaatggatttaatagatattaatagaacatttcatgccaaaacaagagaatatatattcttctgagttcctcatggaacatttcccaaaactgataatataattggtcataaaacagaagcatcaacagatacaagagaatgggaatactcacatgcattctatcagataatattaggataaggctagatgtcaataacaaccaaaacaacaaaaagtccacatactattgaaaactgaaaaactttctgctgaatgatacttggtcagggttgaaataagaaagaattccaagaagttagagaattcaactgaagtgaaaacataccataacaaatatcatggagcacaattaaaacagcattaagtaaagaatccaaagcactaaatgtcttcctaaagaaatttcaagagatcttatacaagcgagttaaaagcacacctaaaagctctagaacagaaagaagcaaagtgcaccaaagaagagtagatgtcaggatattggaggctcagggctgaaatcaaccagggagaaacgaagagaatgataaagaatcaacaaaaccaagagctagtttttaaagaaaatcaacaagatatatatgatatacccttagccaaactaactaaagggcacagagacagtatgcaaattaacaaaatcagaaatgaaaaggagacataacaacagaatctgaggaaatttaaaaaaatcagctgaagctactacaaaagcctttagctctacaaaactgaaaaatctagatggctttctgtactaaagtgaaatcaaggtcaggtaaattatctaaacagtcctatattgcctaaggaaatacatagaggtatcaaaaatcttccaatcaaaaagcctgacagttttagtgcagaattctaccagtccacaaaatagaaacaaaaggaacactacctatcttattctatgaagccacaattactctgatacgtaaaatcacacaaagacccaacaaagaacaagaacttcagaccaatcttgcctatggatattttttggagaccatactgtgagaaaggaagcctttcgcagcttcccaccctaataagccaaatggccttgtgttatggagctggtcgcctcctcctccctatctcatgctggcaccaaagaccctaaaaagactgaattatccctatctcttcctgactcccaagacttctaaggacatgagttatgtgctgagcccagcctgaaacccaggacagttaaggaggaatctacattccggagataagactcagagtgcctcccgcctgcaatctgaattcggccttcatgtcctcagatgcccacttctttgtactttgttaattacccctcagcccctccctatttcccctcgatgtgtgcttataacctgaaatttcagcctaataaactgagaccttgacaggaatcctccttggtctctgttcttctttcttgctcttttctcttccaggtttgcggtcccccttgcacccacgaataactgggtctgctggacaggacagatattgatgcaaaagtactcaacaaaattcttgcaaactgaatctaagaatacatcaaaacctttattcaccatgatcaagtgggtttcatcccatacagggattgttcagtatatgcaactccttcaacataatatactatataaacaaacccaaggaaagaaaccacatgatcatctcattagatgctgaaacagccttcaataaaatgtaacacccattcatgttaaaagtcttggaaagatcaggagttcacggctcatttctaaacataataaaagcaatatactgataataaacaggcaacatgaaattaaatggagagaaactatagcaattccactaaagccagggacaagacaaggttgcccactctttccttatctattcaatacagtactcaaaattctagctagaacaagtggataatataaggaaatcaagggaatacaaatcggaaaggactaaggcaaagtatcactattttcagatgatatgacagtatatataagtaacccccaaaattccaccagagaactactacagctgaaaaacaactttagggagctggagagatggctcagcagttaagagcaccaactgctcttccagatgtcctgagttaaattcctaccaacaacatggtggcttataaccatctgtaatgagatttgatgccctcttctggtgtgtctgaagagagcaatggtgtactcatatacataaaataaataaataaatctttacaaaaCCAAACCAAAACAACAGCAACATAAAACAAAGTGGTAAAAAATGGTCCTGgtctacctgtagaatgaaaattgatccttatttatttatttatttatttatttGGGGgtttttttgagacagggtttctctgtgtagccttggatgtcctggaactcactttgtatatcaggcaaacttggaactcagaaatctgcctacccctgcctcccaagtgctgtgattaaaggcatgtgtcaccacgccccagccctgattgatatttataactctgcacaaaatttaaattcaagtggatcaaggacctgaacataaaatatgatgcactaaatcttatagaacagaatgtagaaaggcctttgaatgcattttttgcaggagacaatagcctgaacagcataccaatgactcaggatctaagatcaaatattgataaatgggacctcatgaaactgaaaagcttttgtaaggcaaagaacagtgtcaaatggcaaatctgcagcctatagatgggaaaagggcctacaccaaccctacatctgacagatgactaatatccatattcacaaataaccaaataattcaattaaaatatggagtgcagagctaaacagaaaattctcaaaagagaaatctcaaatggccaagaagcacttaaagaaatgttcaaagtccttagtcatcagggaaatgcaaatcacaacaactctgaggtaccatcttgtatccatcagaaatggtaagatcaaaaagtcaagagatagcacatactggcaaggatattgagcaaggggaacattccttgattgctagtaggagtgcaaacttgaacaatctctagaaatcaatttggcagcttctcagaaaacttgcaatagttctatttcaagaccaaggtatacctctcctaggcatatacctgaaagatgctccaacatcccataaagacacttggtctgcaatgattaaggcaggtttatttgtagtagccagaatggatggaacttgagtatatcatcctgaatgaggtaaaaaaaatcccaaaaggatatacatacaTGGCAGGTgcatgttgtcctctgagaggctccaccagcagcttactaagacagatacagacacccacagccaaacaatgaatggagcttgacgactcatagatttatatgggaaaggattgtgggccaaagggtatagacactccccaagaagacaaacaaaatcaactaacttgcaaacttgaggatcttggagtctgaaccaccaaccaaagaacatatacgggctgaacctaggccttcccacaaatatctagcagatgtgctgtttgaccttcatgtgggtcacaaacaactggatctggatctacccacaaagctgttgcctgtccatgggttatcttttttctacttggaccgacttgtttggccttagtaggagaggatgcacatagcctcccagagactctaagtgccaggatagagggatatgcaatgggcccccagtctctcgggggagaaagggaagtgggagaattgtgggagggaaggagggaaaaagtaggtgagtagggagaaggaagtaaagtgaatacttgaaaaataaataaaattaaaattaaaaaaaGTCAAATTGGATGCTAAATACAACAAAACACTAATGCCAAAAATACCCATCTAAGCTAGCAGAAATGGGTCTTTGAAAGAGGAACTGCTGGTGTTGGTTTAGAAAAACACATAATATAAAAAAGAAGACTACAGCTGCCCTGGTGAGGTGTGCTGGTCTTTTGTCATTTTTGATGCAATGAACTTATTGAGTCAATGCTTGGTAGGCAGTGAGCATCAACAAGATTTGACACCTTCTTTCAATGTCTGGAAGACTTTGCTTCTTCCATGTGTGGCTTTGGGAAGAACTCAGCAGCAGGAACAAGAAACATTCTTCTTTTGTGAGGCAATAACAAAGTTTGCTAAAGGAGGGAAGAGGACACACTCACAATCCTCAGAGAGGCTTTAGAAGCATGGGAAAGGAAAACAAAGAAAGCATGAGGACAGAGACTCATGCCCTGGACTCTACATGAATATATATATGGCAGAGCACTGAAGCACTTGGCTGGCATTGACAAGTCTTCTTCCCAGGAAGCAAACGTTTCCAATCAGCAGTATACAGTCAAAGAAATTAGTTGGACAAAGCCACGGTTCACAGCCATAGCCCTTTTGCATTTATAAAACCCTTCCCTAAAGAGAGGtataactttaatttttttaagaggctacttttaatcatggttaataaatactttaacctcccttttagcccacaacccaccagaggtagcagaaaagaaaggatacaggggaagagcacctgtttaagaatagttctttgcagcaacttccatctatattttctggaaatcagtagttcagttcacaggtcatcaactgcacctcagtctactcccaaacacttaatggataaaccagcagacctgttctatagagttgggctagcaaacctgaatcagtatcagtgacactaactagcagagagagccaggcctcagccttggcattagtcagcaagagggatcaggaccaagagaaacccaaggaaaattccccactgtgcctctctcaagaaaataccatcagcaaaggcacaagatcaataagtgtttagctatgtaagtaagccaagttcagccaccttccctgtccatctagcccttcttataatttcttcaaacatcacatgtctatgggccttgccacagcatgtttcttgtctcagcatgagtctccctcagctgacataactgtgaccatcagttggagtcctcagaggtggtaagaagccaaaggacaccaccagaagttctccagtgagtttctccccatagagtcccaacaaacaaagtctaactacaaaatgtaaggcagaccaacacacacatttcattggtgaagagcccctcatcacacatcatcctttcatgtgcttgtttagcagaacatcctttcacctgtgtctgcttcagtaaaatgttctttcatttgtttgccttagacaaacaccatggaacagaactgactgtccaaagaacccttaagtttccatttcaGAGAGGTACACACATTTCCTTCAGGGTTAGCTCTCAGTTTTAGAAGAAAGGGAAAACTTGTTTGAATAAAAAGTACCTAGAAGGTGTCAGGAGCTATAGGTTTTGTAGGGTATCTAACCAGAAAGGGCAGCTTCCCTTTGCCTGGGCAAGGAATGGAGCCACCTGTGGCTTCAGGCAGCTGTGACAAAACATGAACAGGCAAGTTCTCTCTATATCATGGAGAATTGAGGCACAATGAGCAGACCCCCGCCAGGAAGGCAAGGACAATTCCAGCAGCAAAAGGACAGTGACAAGACTGCTATTCCTGGATCCAGTAAGGGACCATTTCCCAGAAAAAATACTTGTCCTTTGCCCAGAGCAAGCTAGGAACTCTTACTAGCTTTTTCAGGCTGCTGGCTATCACAGACTCTGAAAAAAGAAAGGCCTGAGATATATGCAATGGTGATTTGTGGTTGAATCTGTCCAAGTAGTCCCTGTTGAAATGGCCTTTAGTGTCACTTCAGTGCACCTGCATGCCCTCACAAGGCCATTTTTTCCCTGGGCCTTTGTGCTCCTCCACCCCCCACACCTACCCACCAGGCTACCTTATCTCTCACCACCCAGAGACAGCCTTTCTTCATGGAATTGCTTCTCCCAGGGTTACCTCTTTAATGTCTCCATCACTAGGTATGCATCGGTCCTTCTGGACTCCCAGGTCCTTGAGCCTCTCCTCAGGGTCCTCTCTGATTGTCTCACCCTGCCCACCCTTGCTGCATACCTCTTTACACTGCTGTGTGTATCCTTCTTCCTGAATTCNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN