TGATTGACCCTTCGTGGATACCTCAGGTCTAAAATCCTTTCCTCCGAGCCAGAGCTCTTCCTGTTGTGCAAACTCAGCCCCGTCTGTACCTTCCTGCTTGGCCGGTGATCGCAGTCCTTCTTCGCCAGCAAGTGTGGGCTTCCAAAGACAGGGCTGGGCCTGGCCTGGGACTCCCTGAAGGCCGAGAAGGACAGGCCCTGCAGAGGCAGCCCCAGGTAGGGGCTGAAGAGGCCGGTCTCCCTGCCCCCCCAGGAGACACCCTTTCCAAAGTGGAAGAGCTGGGTGGACAGCAGCGGGGAGAAGCCCGCAAGGGGCAGGCTGGGCAGGCCCCGGGCGGGGCCCTCGGACCCCTTGTCTCTCTCTCCCAATGCCGCCCCCTCCACGCCGCATCTCTACCTTTGGAGCGCAGTGCCCATGGGCTGGGCAGCCGACTGTGGTGGGCAAAGTCACTCCAGGGCGGGGCGCGGTTGGCCTGGGCTCCAGCATCCCTCTCAGCTCCCGGGCTGGGGGTCAGGAAGCTCCGGTTCCTGCAGTCCACGTGAAAGGTCCCCCTGGCTCCTCCTGCCTCGGTGCCCGCTGTGGCACAGCTGGGCCGCTGACCAAAAGCACTTTTGGCAGCAGGCTCAGCCCCTCGTGGGCTCTGGTCTTTGTAAACGTAAACATTTCTCTTGCTCACTGAGAGACCTTGGCGGAGACACTGCCGCTGGTCCTCCTGGGTGGCGCATGATCCCCTCCGCCGGATCAGTGGGGAGCCCCTTCCCACCCTGGCTGAGCAGGCACGCTGCGCCCTGTGCTCCTGCGCTCCCTGCGCCTCGATGCCCTTTAGCCAAATGTGGGACCCCCCGGCCCTCTGGCTCCGTGTGCACATGCCAGGCAGTGGGGCCGGCTCCTTCCTGCAAGGTACCTCTGGCCTGGCTGGGCCCCCTGTCCCGAGAGCGGTGGGGCCCTCTGCCTGAACTTCTGAACTGCTCACCGACTCCTTGGCCTTTTCCACCAAAAACTTCCTAATCTCCAGTTCGATGCTATCGTCGCTGTCCACTGAACTGCTGTTGTCAGACAAGGAGCCAGGGCTGGGAGCTGGGCCCTGGGACTCTCTGGGGAATAGATTCTCTTCGGAGGCGGAGGCAGAAGCGGGTCTCCTCACCAGGAAGGCCGGGGCTTCGTCCTCTCGGCCCTGCTGCCAAAGACACTGGGGGGTTTCTTCCTGGAGCCCTCGCAGCTGTCTCTCTTGGACTTAGGCAGCTCTTCAGCACCTGCAGGTGCCTGTTTTTCCACTCTCTCAGGAGCCTGCCCAGCTGCTCCTGGAAGTGCGTCTGGGAGGTGCTGAACCTGACCTTCTTCCTGCACACAGCCCTGGGCTCCCTGGACCTCTTCTTGAGCTTTCACTTGGACCTTAACAAGTCCTTGATGGCTGTGTCCAGGTCCTTGTCACTGTCCAGGGAACTGCTTTTGTCTTCGGAGCTCTTCTTCTTGTCTAGGTGCCTTGCCTCGTCTGTCTTACCCTGGCCCTGTGACGTGCGAGTGTCACCGGGCACCCTAGCGGCGCCCTCTCCTCCCGGGGCCTCGCTGGCTGTGCCCTGGATGGAAAGGTCCCGCCCCTCATGGCCCGGCCCGGCTCTCCCCTGGCTGCGGTCGGCATCCTGGCCACCCTCTTTCCCCACCACCCGCATGTTCTTGGGAGTGGATGGCCTCACTTGGCAGCCGCCTCTATGCTTCCTTTTGCAGCCAGGAGTGGGTCCAGTGTTTTAGAGAGAGGGGCCTTGGGGCTGCCGGTCTGGCTGCTGAGGCCAGGTGGTGAAAGTGGGCCCTGGGCAGCCTGAGGGCAGCTCTCACCTCTGGCCAGCAAACTTCTAGACTGCACCTTGAGGGCCAAAAACGTCCAGATTTCCTGCTCAATGCTGTCGTCGCTGTCCACGGAGCTACTGTCACCATCAGAGCGGGAAGGCACGTTGGGGGAGTAGAAGAGTGGGCTTGCGGACAGGGACCCATCGCTGCCCTCCATAGGGCCGGCAGGATCGTCTTGAAAATGTCCAGGACTGCTTCTACACACATCAGCTCAGCGGAGGTGTCTGCCTGGCAAGAGGACCATTCCACAAACTTGCTCCTGGAAGCCGGGCTCGTTGGAGGTGGAGCTTTGGTTTCCTTTGGGATCTTGGGGGAATGGTCAGCGTCCAGATCCCCTGGACCAGGGTCCGTGGTCTTGGTGGGCACTGGCTTCTTCTTGCTGGGTGTTTTCCTGTGGGTCTCTGGCAAGGCACTTTTTGTGGCGCTGCTTGTGCTGTGTGCGGGAGGGGCAGGTGCTCTTTCCTCTTGGAGCTGGACCCTCTGGGGCGGGTCCCCGTCGGCCTCCTTGCGTGTTTTCTGCACCTGGTACAGCTGGATGGCCTCCTCAATGCCGTCGTCGCTGCTGGAGTCGGACGCCTCGGGCGCCTGTACGGCGCTCGTGACTCGCTTTCCCCTCCTTGCGGTGCTGGCGTTCCTTTTAATCCCACTTTTATTCTGTACTGCTTCTGAAGGGCGGTGGGGGTTGCTGGCTTTGTGCTGCCCTCCTTCTCCTGCGTGGTCGTGACCTTGGACCTGAGGCTTCTGGGCTGCACGTTTGTCTTTGCTAACCGGGGGAGGTCTGCAGAAGGCGAACTCCTTCTGGACGCCCATCAGGCCCTGCCGGTGCACCACCTTTGTAGCCGGCTCTTGGTGGGATTTCGAGAGTGACTTCGCCGAATTTTCATGTGTGTCTGGTTTCTTCTCCACTGACCCATCACATTTTTGGTTCTCATGCTGTCTTTTCTCATTCAGAAACTGTTCGATTTCTGCCCTGATGCTCTGCTCAAAGGAGTCTGCTCTGCTCATGCTGACTGGGGAGGCAGAGCCCTGGTCCTTGCTGGATCCCACCTGGCTGCCAGGGCCACACCACCTGAGCCAGGTACAAGTTTTGGGGAACACAGGGCAGTTGGGCACTGCTGTGAGCCAGTTCCGGCTTACATCTACTGCCTCCGCCTGCAGCCCTGGAAGGCTGTGCATGGCTGGGCCCCGCTGGCCCCGGGCTGTGCGGCTCCACTCTTTACCTTCAGGTACTCCTGGATGGCCTCCTCAATGTCCCGGTCCACGGAATCGTCACTGTCTGAATCTAGCACCAATGGGCCAAAGTCTGCAGTTTCCTCCTCCCCCACGGGGTCAAAGTCAGCAACAAGACCACAGGCAGCCAACGCAGGCAGCTCCTTGTGCATGGTGGGCTTGGCAGCAGGCCTGGCGTCGTGGCATCCCTCTGCCCCCTCTGCGCAGTGCGCTCATCGCTGGTGCCCCTAGCAGCCCTGTCGCTCTGCAGCGTGCTGATGAGCATCTGCACCCGGGTGCTCACCGACATGCTCTCCACGCCCTTGTCAGCCTCCGAGAAGCACCCGGGGAACCTAAAGCTCCCTGGTGGGACAGAGGCCACCCATTTGCGCTGGAGAGCAACCACTGGAGGAGCATTCATGAGAAACATTCTGGCAGATGGGGAGCGACGCGCAGAGGGGCGACACTTTATTTCTCTGCAGGCTTCACATCCTCCAAAGATTGGCAAGCAGTACCCGTGAAATAACTTTAAACCTGCAAATGCTTCTTTGCAGGTTTAAAAGGATGACTATAAACTATGACGTCATGCCTAGATTCATTCTTGACCCAACCAACAAGCTCTTGACATTCTCTGAGTCCAGGTTGACTGTGATGAAAGGCAGCTAGTGTTCCCAAATGGCCCAGGGATCAGGTCTTCATCGCTCCACTCAGAGGGAAGCATCCTCTCTCTGCTTTTTAAATAGACTTTTGACTGGGGCTCCAGCAGCGCGGGGCGCGCAGACCTGGAGTTGCATGGAGGCCAGAGCCACGACACCCGCCTGGGGAACGGAGCAGCCCCAGGCGCTGATCCCCGTCCACCTGCCCCACGGAGCCCTCGCCGCCCGCTTGCCACTGCCTGCATGGCCCTCCTGTCCCCGGCCCCCCAGCCCTCCTTTCCCCAGCTCCCCCACCCTCCTGTCCCCGGCACCCCAGCTTCCCAGCCCCCGAAACCGCCCCCCCACCTCGACCCGGCCCATGCCGCAAGTCGCCCGCTGCGCGGACCCGGCCTCCGCCCGCCTCCTGCGTCCTGGGGGAGGCGGCTGCCGGGGGTGGTGGGGGAGGGAGAGGGGGAAGAGGCCGCCCTCCGCCCGGGTGCGGGGAGGGGGCGCAGGGGTGTCCGGCCAGGCCCCCCGCCTCCCCGCCTCCCCGCAGCAGCTGCCCCGCTCCCGGGCCGCCTAATACTTTTACATTTTAACTTTTATACTACAGTGAAAAGTGATTTACACACCACCACTGCAATATTACAGTGTTATGAATGTGACTATATACTTACCTTTCCCTGTGAACttttttttttgagacagagtctcgctctgtcgcccaggctggagggcagtgtccatgatctcggctcgctgcaagctctgcctcccgggttcaagtcattctcctgcctcggcctcccgagtagctgggactacaggcacccgccaccacgcctggctaattttttgtatttttagtagagacggggtttcaccgtgttagccagcatgatccccctcttctgaccttgtgatccacccgccttggcctcccaaagtgctgggattacaggcgtgagccactgcgcccggcctacctgtgaacttaatatcttaatgttttaatgttgctaatcagaatccttttatttcaacttgaaaaactgccttataaggcaggtgcagtggtgatgaactcccttagaatttttttggtgggagtctgggaaagaccttatcatctctttttcatttctgaaggacagctttacaagttgtggtcttcctgattggcagtttttttcttccaatacattgaatatagcatcctattctctcctggcttataaggttgctgctgagaaatccactgatagccttattgaagtttccttgtatgtgatgaattcctttcttcttgctgcttttgaaagtctctgtctttgacttttgatattttaattataatacatcttggtattatggtctttgggctggccttttttggggcctctgaacttcatgtgtctggaagcccacttgcctctaagaatttggaaagtttttacccattatgtcttcaaatatactttcaggccttttctatcttttttacttctagaaagtccataatatgtttgacccacttcatggtggtgtcctataaatcccaaaggtttttactttataaacttttttttctttctggtcttctgacgggatatttcaaatgtcctgtctttaatttcacagattctttcttctgtttgatcaagtctgcaattgaaattctctattgcattttcatttcattcatttatttatttttatatatttttgagacagagtctgtgtcacccaggcttgaatgcagtggtgccatcttggctcactccaacttccacctcccggttcaagcgattctcctgcctcagcctccctagtagctaggattacaggcatatgccaccatgcctggctaatttttgtatttttaatacagatggggttttggcatgttggccaggctggtcttgaactcttgccatcaagtgatctgcctgcctcggcctcccaaagtgctgggattacaggcgtccgccacggcacccagcttgcattttcattttattcattgtattcttcagttctagaatttctgtttggttcttattatttctgtatctttattgaacttttagttttgttcatctactattttcttgatattattgagttgatatatacattctagtaaatttcactgagctatcttaattattttgaattgtcaggcaatttgtagatctctatttttggggggttgattactggagatttatgagtttattttggtagtgtcatatttgctgattcttcatgatctacaaactttcattaatgtctatgaagaagcaaatacctcttcttttcttttttttttttttttgagacagagtcttgctctgtcacccagctggagtgcagtggcgtgatctcagctcactgtaacctccacctcccaggttcaaatgattctcctgcctcagcctcccaagcagctgggatcacaggcatgtgccaccacgcctggccaatttttttgtattttttgtagagacagagtttcaccgtgttgtccaggctggtctcaaactcctggcctcaagtggtctgcccgccttggcctcccaaagtgctgggattacagttgtgagccaccatgcccaatctctttctgtctttatagattggtttcagcaggtacaaaccttttcctgctggatcccttgactggatcacagtcaagtgggcctggagccatatcacatggctgctgcctggtctgcagctgaatctctgattggcaggccgctatcaaggcataggttggtgatgcagtttctgctggatcctcaggagaactggactgcctctgataccctgattgaacaggactggagccaggtcatggggccacttctagttctacagtcaagtcttcagatatcaggcctattaccaagggcatggactggtatagctccctgtgggtcccagattgagctcctgctggcttactaggtaggtccatgggaagacaggactgcctccagaccacagtagagcagggctagagccaagtcacaggacagctttggtgaccacatttgggttcaagattggtggtcctcttattaggagaatggatggtatgtctttcaccaggtcccaggatgggctggactgtgcccagactgtggcaaagcaagactggaatggagtcacagggctactttagtgtccatagctgagactgagatcagcaggcctgttaccaagggcatgtaaaggcatcactgaattcctgggcaggcacgactgactgtggtagagtggggctgaagccaggtcagggctgctttagtttctgcagtcaggaccatggttagaaggcctgttactgggggcataaatggtcatggttcctcctaggtgcttagtggatggggctagttgcaagaccatgatctagtggagctggacccaagtccataggaggacaaagctgctttcagtctgcaactgggaacctgtcactggtgtgtggacctgccttctcaaagcagctctccttggttttgggctttgctagagttttgccacctcctgcctggatattaaaactcttgcaaaggcagttttgtccatgaatggctgccagatcattgtttgtgtggggagaggtgagtggagggcctcctgttctgccatcttgctgatgtcaccctaagatgattatttgaattctttgtcaggcaatttgtagatcttcatgtctttggagtcagccactggagtttcattttgtttctttggtggtgtcatattttctcatgcttcctgttctttgaagacttagattgctttcttcatgtttgaagaaggagtcatcttttccactctttactaacttcaggagagaaagaccatcaattagctaagctatagattctgggggtctctcagtccttttctgtgggtggtccttccctttcaagggggatgtcttaggattttgtcccttgtcttcatttcacaaatgaataaaacaaccagaccagacataagtaaggaaatacagcacttgaacaacacctgaaaaaacaactagacctaacagacatacacaggatattctacccaacaacataatacacatacttctcaagtatacatgggacattttcaggatagaccacataacacatcacaaattaattctcaataggggctgggtgcagtggctcacatctgtaatcacagagtaatttgggaggctgaggcgggtggattgcttgaagccaggagcttgacatcagcctggccaacatggtgaaaccccatctctactaaaaatacaaaaattagctgggcgtggtggtgtgtgcctgtgatcccagcttcttgggaggctgaagcgtgagaattgcttaggagcccaggaggttgaagctgtagtgagcagagattgtaccactgtactccagcctgtacttcatgacaaagaaaatgtaccattgtaccactgacagaatgagaccctgtcccaaaaaaggaaaaaagctcagtagatttaaaatgatagacatcatacaaagtgtcttctctgaccacaacaggataaagttagaaatcaataacagaagattttaaaaagttcacaaattagtagaatttaaacaacacactctcaaacaaccaatggatcaaagaaatcacaaagaaattataaaattcttaaagacaaatgaaaatgaaagcacactatatccaaacttatgggttgtggccagttgtggtggctcacacctgtaatcccagcactttgggagactgagggaggtggatagctagaagtcaggagttcaagatcagccaggccaacatggcgaaaccctgtctctactaaaaacacaaaaattagctgggagtggtggtacgtgcctgtagtcccagctacccagcaggctgaggcatgagaatttcttgaacccaggaggcagaggttgcaccactgagctaacaccactgcactccagcctgggtgacagaatgagactctgtctcaaaaaacaaagaaacaacaaaaaaacacaacttatgagttgtggtgaaaggagtgctaaggaggaaatttatagctataaacacattaaaaaaagaaacacctcaattcaacaacataagtttacacattaagaaactagaaaaagaagaataaaactaaacccaaagttagcagaaggaaggaaacaatagagatcagggcagagataaatggaaaagagaatagaaaaacaataaaaaacaaaaccaaaagttggttcttcaaaaagattaataaaactgacaagactaaggaaaagggaaacaatctaaattacttaaaacagaaatgtatttgagaatatctttatatatttctgtctgtctgtctgtctgtctgtctgcctgtctATGttttagagacaaggtctagctccattgccctggcaacaatcagatgcaaccacaatcagtggcacaatcggctcactgcagccttgaattcctgggctcgccactatgccagctctttttttttttttttttaagagacaggatcttgccatgttatccaggctgatcttgaactcctggcctcaaggaattttcccacctcggcctcccaaattgttggattacaggcatgacccaccattcccagcctagaaaggattataaaagattactataaataattgtgtgctcataaattggataacccagatgaaatagatgaattccGCGNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN