cacctggccagccaccccatccgggagggaggtggggtggttaaccccccgccaggccagccgccccctccaggagggaggtgggggggtcagccccccgcccagccagccgccccgtccgggaggtgaggggcgcctctgcccagccgcccctactgggaagtgaggagcccctctgcccggccagccaccccgtccgggaggtgggggggtcagccccccgcccggccagccgccccgtccgggaggtgaggggcgcctctgcccggccgcccctagtgggaagtgaggagcccctctgcccggccagccgccctgtccgcgagggaggtgggggggtcagccccccacccggccagccgcaccgtccgggagggaggtgggggtgtcagccccctgcccggctagctgcctcgtccgggaggtgaggggcgcctctccctggccacccctactgggaagtgaggagcccctctgcccggccagccgccctgcctgggagggaggtgggggggtcagccccccgtccggccagccgccccgtccaggagggaggtggggggtcagccccccacccggccagcctccccgtccgggagggaggtggaggggtcagccccccgcccggccagccgccctgtccgggagggaggtgggggggtcagccccccgcccggccagccgcccggtctgggaggtgaggggcgcctctgcccggccgcccctactgggaagtgaggagcccctctgcctggccaccaccaagtctgggaggtgtacccaacagctcattgagaacgggccatgatgacaatggcggttttgtggaatagaaaggggggaaaggtggggaaaagattgagaaatcggatggttgccgtgtctgtgtggaaagaagtagacatgggagacttttcattttgttctgtactaagaaaaattcttctgccttgggatcctgttgatctgtgaccttacccccaaacctgtgctctctgaaacatgtgctgtgtccactcagggttaaatggattaagggcggtgcaagatgtgctttgttaaacagatgcttgaaggcagcatgctccttgtttctttgttcacttgtttatctgctgaccttccctccgctattgtcctatgaccctgccaaatccccctctatgagaaacacccaagaataatcaataaaaaaaaaaGACCCTGTCCCCTCCAaaataaataaataaataaataaataaataaataaataaaaagactgagatttgctaagcacaaagttctttgattatgacacaaacccactgcatgtgtagtattcatctggactgagtacaaacaagatgctcatgctgtgtgctgtgctgtgagtaataaagtcctttgtctctgaaaaaaaaaaaaaaaagaaaaaagaaaGTATGTTATAGCAGATGCTCACTCATCAACCTGCCTTGAAATTAAAGGTTtataaggtgcataagggcaaagcctttgatgttgtcattacattcacaaaggtatctgaggcacgtacagcatgaagttccctaagtgcttgcaacataagcagcactaaattttgttgaataaataaatGAATACTTTTGTATAGCATCTGCTCAAAATCTCTGATGTAAAAATGAAAATAATCTGAAAATATGCAAAACTGAATTTTCCCACATACGGTTGCCAATTCATACAATAAGATAAATTTCAAAATGAGAACATGACAATAAAATCAAGTTTCAAAATGGCTGGCCTTTTATAGCAAAACCCATGTTCAAAAAAAGGAATAAGACATCAAATATTTTGAGAACCAAAATTTCACTGCTGCTTTTCTAACACCCTGTTGTTAACCTGAGCCCCCATCCTCTTACTGTCAGTAACAGATTTTCATAATAAAATACAAGAAACAGGCCGGGTGCCTGTCAATAACATATTTTCATCATCAAATACAAGAAACAggcagggcacggtggctcacacctgtaatcccagcactttgggaggctgaggcgggtggatcacttgaggtcaggagtttcagacaagcctggccaacatggtgaaacctcatctctactaaaaatacaaaaattagctgggtgtggtggcaggcgcctttaatcccagctaatcaggaggctgaggcagtagaatcgcttgaacctgggaggtggaggttgcagtgaactgagattgagccactgtactccagcctgggagacagagcaagactctgcctaaaaaaaaaataaaTacataacataacagaatctctgggacatattcaaagcagtgtgtagaaggaaatttatagcactaaatgcccacaagagaaagcaagaaagatccaaaattgacaccctaacatcacaattaaaagaactagaaaagcaagagcaaacacattcaaaagctagcagaaggcaagaaataactaaaatcagagaagaactgaaggaaatagaacacaaaaaacccttcaaaaaattaatgaatgcagaagctgtttttttgaaaagatcaacaaaatcgatagaccactagcaagactaataaagaagaaaagagagaagaatcaaataggtgcaataaaaaatgataaagggattattaccaccaatcccacagaaatacaaactaccatcagagaatactaaaaaacttctacgcaaataaactagaaaatctagaagaaatggataaattccctgacacatacatcctcccaagactaaaccagaaagaacttgaatctctgaatagaccaataacaggctctgaaattgaggcaaaaatcaatagcttaccatccaaaaaaagtccaggaccagatggattcacagctgaattctaccagaggtacaaggaggagatggtaccattccttctgaaactattccaatcaatagaaaaagagggaattctccctaactcattttaagaggccagcatcatcctgataccaaagcctggcagagacacaaccaaaaaagagaattttagaccaatatccttgatgaacattgatgcaacaatcctcaataaaatactggcaaaccgaatccagcagcacatcaaaaagtttatccaccacgatcaagtgggcttcatccctgagatgcaaggctggttcaacatacgcaaatcaataaatgtaatccagcatataaacagagccaaagacaaaaaccacatgattatctcagcagatgcagaaaaggcctttgacaaaattcaacaacacttcatgctaaaaactctcaataaattaggtattgatgggacatatctcataataatgagagctatctattacaaacccacagccaatatcatactgaatggaaaaaaactggaagcattccctctgaaaactggcacaagacagggatgccctctctcaccactcccattcaacatagtgttggaagttctggccagggcaatcacgtaggagaagggaataaagggtattcaattaggaaaagaggaagtcaaattgtccctgtttgcagatgacatgattgtatagctagaaaaccccactgtctcagcccaaaatctccttaagctgctaagcaacttcagcaaagtctcaggatacaaaatcaatgtacaaaaatcacacgcattcttatacaccaataacaggcaaacagagagccaaatcatgagggaactccctttcaaaattgcttcaaagagaataaaatacctaggaatccaacttacaagggatgtgaaggacctcttcaaagagaactacaaaccattgctcaatgaaataaaagaggatacaaacaaatggaagaacattccatgctcatgggtaggaagaatcaatatcgtgaaagtggccattctgcccaaggtaatttatagattcaatgccatccccatcaagataccaatgactttcttcacagaaatggaaaaatctactttaatgttcatatggaaccaaaaaagagcccacatcgccaagtcaatcctaagccaaaagaacaaagtcggaggcatcatgctacctgacttcaaactatactacaaggctacagtaaccaaaacagcatggtactggtaccaaaacagagatatagatcaatggaacagaacacagccctcagaaataatgctgcatatctacaactatctgatctttgacaaatctgacaaaaacaagcaatggggaaaggattccctatttaataaatggtgctgggaaaactggctagccatatgtagaaagctgaaactggatcccttccttacaccttgtacaaaaattaattcaagatggattaaagacttatatgttagacttaaaaccataaaaaccctagaagaaaacctaggcaataccattcagttcataggcatgggcaaggacttcatgtctaaaacaccaaaagcaatggcaacaaaaaccaaaattgacaaatgggatctaattaaactaaagagcttctgcacagcaaaagaaactaccatcagagtgaacaggcaacctgcagaatgggagaaaattttcacaacctgctcatctgacaaagggctaatatccagaatctacaatgaactcaaacaaatttacaagaaaaaaacaaccccatcaaaaagtgggcacaggatatgaacagacacttctcaaaagaagacatttatgcagccaaaaaacacatgaaaaaatgctcaccatcactggccatcagagaaatgcaaattaaaaccacaatgagatatcatctcacaccggttaaaatggcgatcattaaatgtcaggaaacaacaggtgctggagaggatgtggagaaataggaacacttttacactgttggtgggactgtaaactagatcaaccattgtggaagtcagtgtggcgattcctcaggtatctagaactagaaataccatttgacccagccatcccattactgggtatatacccaaaggaatataaatcatgctgctataaagacacatgtatgtttattgtggcactattcacaatagcaaagacttggaaccaacccaaatgtccaacaatgatagactgcgttaagaaaatgtggcacatatacaccatggattactatgcaggataaaaaatgaagagttcatgtgctttgtagggacatggatgaaactggaaaccatcattctcagtaaactattgcaaggacaaataactgaacaccgcatgttgtcactcataggtgggatttgaacaatgagaagacatggacacaggaaggggaacatcacacactggggactgttgtggtgtgggcggagtggggagggattgcattaggagatatacctaatgctaaatgacgagttaaagggtgcaggacaccagcatggcacatgtatatatatgtaacaaacctgcacgttgtgcacatgtaccctaaaacttaaagtataataaaaaaaaaaaagtcaagaaacaacagatgctggcaagactgtggagaaataaacacttttacactgttggtaggaatgttaattagttcaatcattgtggaagacagtttggcgattctgcaaggatctagaaccagaaataccatttgacccagagatcccattactgggtatataaccaaaggactataaatcattctattataaagatgcatgcacgcgtatgtttatagcagcactattcccattagcaaaaacatggaatcaatccaaatgcccatcaatgatagactggataaagaaaatgtggtgcatacacaccatggaatactatgcagccataaaaaggaatgagatcatgtcttttgcagggacatgcatgaatctggaaaccatcctcttcagcaaactaatacaggaacagaagaccaaacaccacatgttctcactcataagtgggagctgaataatgagaactcctggacacagggagaagaacaatacacactggggcctgtcagtggggacggggagggagagcatcaggataaatagctaacacatgtcaggcttagtacctaggcacctaggcagtgggttgataggtacagcaaatcatcgtagttcacgtttacctatgtaacaaacctgcatgtcctgcacatgtatcctggaacttaaaataaaatttaaaaaaTAAAAAGAAAACACAAGAGTACTGAAaattggctcacagttccacagcctgtacagcaagcatgatgctgacatctgctcggcttctggggaggcctcaggaaacttaacaatcatggtggaagggaaagcaagagcaggaggaagagagagagggggaaggtcctatacactttaaacaacaagatctcatgagaactctatcacaagagcagcgctagggggattatgcttatccattagaaactgctcccatggaccagccacctcccagcaggccacatctccgacagtgggaaccacTGGAGGctgctcccatggaccagccaccttccagcaggccccatctccaacactgggaaccacTggaaactgctcccatggaccagccacctcccagcaggccccatctctgacactggggattacatttctatagaaatttccaataattttggaacacatactaataacatatttataaaaatacagtccaaagtagcccaaacaccattcactcttctatttgaaagttttccctctattctaatgtcacaatatccagcgttattaatcagaatcctgcatttaagggcatctgttaaattttatagctgattataaaaccatcatttaaagaggaccaaaatgagacaaaaattgtctgtggatgacaaaaacattaagggcagccacagttaaagacacGaacaacagtctttaaagtagaatttgctgtagagcctattatgagggagatatttctagttattacctcctttattctaaaccatggaaaaaggacctatcaaataaagtccttctagaagagtgaagggctcctggcaatgttctctttaatccatgatgtgggataaggggagttttgactgattatgaggcaatgtatataccactaaagtttcAACACCCTAAAAGGAATAAAAATGGGGGAGGGAAGTCCTGGAAAACCAGATGGAGCCgtagcagaagatgatttcagtccaccgaaccctgaattgtgggctggttgtgctgcatcgctctgTGACTTATGGTTCTGCTGCAACAAAGATCTAATTCCCAGGGTTATAGGAAAAGACACCTGCAGTACCCCTGAGTCACAGAGaagggagaaatccaaacttgacttaagtctagggttcttaaaccacacaatctgctcataaggaggacttcaactctgaagatactgatttggggctgtttcaaagaaagaaattataaatatgagtgggaaagagaacaaccttccccatatccagtGGCAAAAAAATGAGGGAGAGggaaggaaggaaggaaggagggaaggaaggagagaaggaaggaaggagagagggaagaaaggagggaaggaaggagagagggaaggaaggaaggagggaaggaaggagagaaggaaggaaggagagagggaagaaagggaaggaaggagagagggaaggaaggaagtagggagggagggaggtagggacggaaggaaggaaggaagtagggagggagggagggacggaaggaaggagagagagaaggaaggaatgaaagaaggaaggagagagggaaggagggcaggaaggaaggaaggcagagagggaaggagggagggagggaaggaaggaaggagagagggaaggaaggagagagggaaggaagaaaaggaaggaaagggaaggagggaaggcaggaaggagggaaggaagaagggaaggaaggaaagagggaaggatggaaagatggaaggaaggaaggcaggaaggagggaaggaaggaaagagggaaggaaagagggaaggaaggaaagatggaaggaaggaaggaagggaaggaaCTTGGATATGCACAAAAACAAAATTTAATACGGAAGTCTATCatctgacctaattggaaatgtactattttctacaacaatttatacagtccaaagataaaagggtgctgattggtatttgtaactctccagcatatattctgaatcaattttaacatctgctgaaatctaccaattgtcataccttcacaaactaaatcgatactgaagctcaaactttgttatacctgagatttcactaaatttaaacattgcatcccctaatcctagcagagtaactgcatatagaatagagggcacatacttatgcctcacatttgttaccttgactaaatttcccgtagtcatagaagtctttgtccataggggacctggatgctctgacctaatgagtaacaaattgatattaaatcatttacacttacacattgacttcaccaaatgtaaccttacagaactccctctcctgttttttttttaatttgatttatttttaatttttcattttttagagatggggtcttccttcattacccaggctgaatgaagtgtggtggcacaatcgtagttcactgctgccttgaactcctgggctcaagcaatcctcccattttaaccttccaagtagctgggtttacaggcatgcaccaacacagccaattaaaaaaatttatagaagtggagtcttgctatgttgcctaggctggtctctaacttctggcctcaagcaatcctcctgcctcggcctcccaaagtgctgggattacaggtgtgagtcaccgtgcctagcctccccatcttgataaattagcaaatatggttcaacataaattacaacacgacttcaaataaataaaacttattatataaaaccaaatgaattagggaaggggtgataatcttcattgcttcaacgtttagcagtagaatttggcctgttcttaaacctgcaaagaataaatggtgtttcacagtggattgctgtaatgtgactgcagtgctcccattcattaaggcccttgtacccaatacctaatattTTGGTTAATTTTTTTTATTTCAATAGGTTTTTGGGGAATATGATTTTTTTttttttaatttcaataggtttttgggaaacaggtggtgtttgcttacaggaataagttctttagtggcgatttctgagatttgtggtgcacccatcacccaagcactgtacattgtacccaatatgtactgttttatccctcactgcacccaccccaccactcccagcctttccccgagtccccgaagaccattgtatcattcttacacctgtgcatcctcacagcttagctctcacttatgaatgagaacatacaatgtttggttttccattcctaagttgcttcacttggaataatggtgtccagtttcatctgggttgctgtgaatgcattatttcattccatcttaagaatgagtagtattccatgtggtaaatatttataccacattttctttatccacttactgattgatgtgcatttaggctggtttcaaattcttccaattgcatattgtgctgctataaacatgcgtgtgcaagtatctttttcatataatgacattttcctctgagtagatacccaggagtggaattactggatcaaatgatagatctgcttttagttctttggaaatttcctcactgttttccatagctgttgtactagcttacattccctccaaaaagtgtaaaagtgttccctttttaccacatccatgccaacatctattaatttttgattttttgattatgaccattcttgcaggagtgaaggggtatcatattgtattgtggttttgatttgcatttcccagataattagttatgttgaacattttttcatgtgtttgttggccagttgcttatcttcttttgagaattgtctgttcatgtccttagcccactttttgatgggatgtttttcttgctggtttgtttgagttccttgcagattctgggtattagtcctttaatcagaagtacagattgcgaagattttctcccactctgtaggttatctgtttactctgctgattatttctcttactgctcaggagccttttagtttaattaagtctcatctatttatctttgttttagttgcatttgctttttgggttattggtcatgaagtctttgcctaagccaatgtctagaagggtttttccaatgtcgtcttctagaatttttatggtttcaggtattagatttaagtccttgatccatcttgagttgatttttgaatagggtgagaaatgagcatccactttcattcttctatgtgtggcttgccatttatctcagcaccatttgttgaatagggtattctttctctgctttatgtttttgtttgttttgttgaagattagatgactgtaagtatttggctttatttctgtgttctctattatgttccattgatctatatggctatttttataccagtgccatgctgttttggtgactatggccttctagtatagtttgaagtcggcttctagatttgttctttttgcttagtcttgctttggctatacaaactcttttttggttctaggcttttattaccttaaggtatgtcccttctatgtcttttttagttccatgtgaatttttgtagttctgtgaagactgatgttagcactttaatggggattgcattgagtttgtagattgcttttggcagtatggtattttcacaatattgattttacccatccgtgagcatgggatatgtttccatttgtttgtacctatgatttctatcagcagtgttttgtagttttccttgtagaggtcttttgtctctttggttaagtattccggatataattaagattttgtctgcaaagattgcatgcaattgacaattatgggaatatactattgtaactataggaattataatattcctaagatttttattgcagctattgtaaaagggggtgagttttttatttaattctcagcttgttaactattactgtatagcacagccactgacttgtgtacattaattttgtatcctgaaactttgctgaattcatttaccagtcctagtagcttttgggatgagtctttagggttttctaggtatacgatcatgtcatcagcaaagagtgacagttcgacttcctctttacctatttggatgccctttatttctcttatctgattgctctggtgaggatttctagtactgtgttgaatagaagtggtgaaagtgggcatcattgtcttgttccagttctcagggggaatgctttcaacttttccccattccatataatgttggctgtgtgtttgtcatacatggcttttattaccttaaggtatgtcccttcgatgttaattttgctgagggttttaatcataaagggattctggattttgtcatatgctttttctatgtcgattttgctgagggttttaggcaaaaagggatgctggattttgtcaaatcctttttctgcatgtattgagatgatcatgtgatttttgtttttaattctgtttatgtggtgtatcacatttattgacttacagatgtttaaccatcctgcatccctggtttctcttcagatcgtatacatctttcaccttatgatggttaattttatttgccaagttgggttgtctagatatttggttaaacactctgtatgtgtctgtgagggtgttccttgatgagacaaacatttgaatatgtagacttagtaaagtagttgccctctccagtgtgagtgggcctcatccaatccattaaaacccaaataaaacacaagggtagaggaagagataattcaccctctttgatgatttcagagctgagacgtagatcttctctcgcttttgaagtcagacgtggactgtaacttatgccatcagctttcctggttctcaggaatttaggcttggactggaactccaccattggcagtcctggttctccagcttgctgactgcaggtcctgggacttcttagcctccataaccacatgagccaattccttacaataaacctatatatattcatgcaactgataaatattttgttgttacagatttggctaccatgttctttttgtgcctattttaacagagtctcagtcatagcctgccttcatctctgaagggaccaggcgacccatggagtgcctcggcagcctcgtcattgcatgcaatcttcacagacaagatctcactgcaaccacgtttctacaggagcacaggtgtgacattatactgatgacatcattctcagagaaaattcattttacatactaaggacacacagatacaaGGAGGCTTACACAAAGGGAGTGGACCTCTCCTCAACACAGTAGTGCAAGGCCCTGCCACTTTGCTTCAATTCCTGAAAATTCCTTGGTAAACTTGGGGCTGCTCTATTCCTGACACTTTCAAAAAACAGTTATTCATCCTCTCAGCATCCACAATGTTAATACAAACCCAACATTCTTCAATTTGTGttttgttttttggaggcacagtcttgctctgtcacccaggctggtatgaagtggcacaatttcagctcactgcagcctcgacctcctgagctcaagcaattctcccatctcggccttccaagtagctcggactgcaagtgtgtgccacgacactcagctaattttgtttaattttttgtagagaaaaggtctcgctatgttacccaggctggtctcaaactcctgggctgaagggatcctcttgcttcagcctcccaaagttctggggttacagttgtgagccactgtgcccagccCtttaattctttacttggggttcaggtgacaacatatttcttgtttacaaatcttacttaatctcactgatgctgtcattggcaaactgacccacctcgaatgaagcctcctccaacaagtctggaatctgtccaaatttaaattaacaggtacttctatgaattccctcagagaacacactgtggatgctttagagacctcttcccatgcatcctgaattatctgggttgcatatggtggccataagtagtccatgggcttctgatgtaaaaacaaacctgccccttttgaccctgctctgtacagcatcagggcagtgattgctgaccatatcctggaccctctggaaacagagggctctgcatccatgtccatgagccttcatgcccatctggccatcaggccttgggaagcagcaccccacagccttggcacagctgcagagacctccttgcctcaggatggagtcaaacctggaccccctgccattctcatctgcaggaaacactgccctccttcattctcagGCTGTGTTGCTGGAAGTCACCCGTCTCCGAGGAcccttgggatcgactgagtgaccagcagtgaagttcatccaccttctgaatggatgccatcatctgacatgatggagcgcagtgggatgctgctgccttccctcccttagctaggatgtccctgataaaggatgacacccaagcctcagcacaactggccaaacttgaggtggtcatctcagcactgatgctgggccaacaattagccccatttgtacatttttacaaatttttggcaattgtcaagaattgtccaccttccctccccattgaattaaagaaacttcttgcctcatggatactcagaatacaatcaaggtaacagatgcctttttttttaaccaaggacacagtacagatctcacagggacactccttatctcctgcagagttccagacactactgatggtgaccaaggcaacattcatcggaaaacacagtgctaggcttgtgaaagtgtccagtagggcttccactgcccctataggctgcaggcagctgctttagttgagagagagactgagctcctcaaagaattcNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN