Hi all,

I'm currently using SAX to parse an xml file. Recenlty I have encountered a problem where, one of the element consist of more than 50,000 characters (a DNA sequence ) and the SAX results nothing as an output.


The code which I'm using is

public void getCommand() {
	try {
		// open file dialogue
		 JFrame frame = null;

			String filename = File.separator+"tmp";
			JFileChooser fc = new JFileChooser(new File(filename));

			// Show open dialog; this method does not return until the dialog is closed
			fc.showOpenDialog(frame);
			File selFile = fc.getSelectedFile();
			
			selFile = fc.getSelectedFile();
			f =  selFile.toString();
		String tempFile = f;
		// end file dialogue

        //System.exit (0);



		
		SAXParserFactory factory = SAXParserFactory.newInstance();
		SAXParser saxParser = factory.newSAXParser();
	 
		DefaultHandler handler = new DefaultHandler() {
	 
		
		boolean bgenomeSequence = false;
	 
		public void startElement(String uri, String localName,String qName, 
	                Attributes attributes) throws SAXException {
	 
			if (qName.equalsIgnoreCase("qwer")) {
				bgenomeSequence = true;
			}
		}
	 
		public void endElement(String uri, String localName,
			String qName) throws SAXException {
	 
		//	System.out.println("End Element :" + qName);
	 
		}
	 
		public void characters(char ch[], int start, long length) throws SAXException {
	 
	
			if (bgenomeSequence) {
				
			System.out.println("qwer : " + new String(ch, start, int(length)));
				bgenomeSequence = false;
			}
	 
		}
	 
	     };
	 
	       saxParser.parse(""+tempFile+"", handler);
	 
	     } catch (Exception e) {
	       e.printStackTrace();
	     }
}

The sample xml file where I'm encountering error,

<sequence123>
    <source id="1">
      <label>input sequence1</label>
      <qwer>gatcggcaggatcagctcgagcacatcatcagccacccgggggccctgatcggcttctcggacgcgggggcacacctgcggcagatggcgcactacaatttcccgctgcgtatgctcttccgggtccaggaggcggcgcgggagggacgagaggtcatgcccatcgagcgcgcgatctggcgcctcacgggcgagctgggcgattggttcggaatcgcggcggggacactcgcaccggggcggcaggccgacgtggtggtgctcgatccggcgggcatcgatggtgcggtggagaaggtgcacgaggagcccatggagggcttctccggcatggtgcggctggtgcgtcgaaacccgcgggccgtgcgcgcggtgctcgtgaacgggaacctcgcggtgcgtgatggcgaggtgctccccgatgtcggcaagcgcccgggcttcgggcggctgctgcgcgcgcaggaaacccgtggcacaagggcttgaggctgccgcgcagacgatgtgtctgtaagaagtgccttgcagtgaaaagaaatcctcgcgctcgcgttcgctgcggtggagcggatcggacgcctgacggtacgatgccacacctgcggctgcgcccgatctgccgtgcggggccgtcgtcaccggggaacgaatccatgctcgtgcgccgcaccctgccgttcatcgccctctcgtcgaccctctggcttctgggctgcggtgaagtgcgggtcgtcgacgccaggtccggtgagcaggacgaccacgtccccccgtcgcccccctctggcccctgccagctgacgttcgcgttgcccttcggcggcgtgggtaggggactcgaggtctcgaacgatggccgcaccgtgagcagcttgagcgccaccgagatgctgcaggggagcgtcggacgggtagggggacggtggtacttcgaggtcaccgtcgacaccttggccgacggcgtgtggtgggctcagaacatcggcatcggcacgcccgacgggattcgcacgatgggaggcagcagcgggggactgagcgcgctcctcaacagcggggggagcctgatgcccggtttcggctcacccgagcccttcttcggtgaggccttcggtacgggagacgtcatcggggtggcagccgatctggacgaagggcgcgtctttttcagcaggaatggcgtctggctgaacgcaggcgatccgctccaggggacgagaggtgtgccgatcatcgtgctgcctggcgtcgacgcctactacccggcggtcggggtctccgagggcgacacgctgaccatcaacctgagcggcgacttcgtgcatgcgataccagcgggctatgcccccttcgccgccggcctcaccggcgatgaagacgggcactgcatcgacgtcggcgccggtggaatgccagcatctccagcgcccgtgcaggcgacctgctcggcggcctacgagttcacgagttacgcagctccccagggcagcggcgaagagctacacgtcgtcggcatctacgagccttccacgggcgtaggcggacaggtcgacgtccacatcgaacgctcgggagacatgacgctggccctcacggcctacgtggcgacatcgttccgtgtgacggtcgcccccggggcaaacctcgggcgcatcgttctttcgagctacgaaccctcctccgtcgacgcgcctctcggcgtcacggtgagcagccatgtcttcgagggcaatggccgctacctgggagggggattcgaatggccctcttcggagacgagcgaactgatctccgccgtggaagaggagaccgagctgaagctgagcagcttcagtggttgctatgcgggaagccaattcacgctgaccaactgagtggctcgcttcgcgtggagagattcgttgggcgtccttcacgacaggaggacgggagggcgtcacggtcgtcctggtcacggcgtgctgataacagaacccattcgcagaccatgagtgccagggggtcatcgattcgcttgctgggtgcccgcgagatccgcctgggcaagcggttggatgcaatgttgacactgggaccggggggaagtagcaactggcggattgcagcatacctgcaagcgatggcgccctgcttcatcggcatggaacgagaacctggcacgcggccgcgtcctgttcgcgcgcagcgcaccggcgggcagggcgtcggggaggcttcgtcgaggaggagcgttcaccggaacgcagaaaaggagctacgtggagacccaccatgatccgtttccggtggtgtgggacgaccccgatgacgctcaggccttctgggtcgtcaacgtcgtccactgccctgcgccgatgagccgtctcgatttcgacctgcgcatgcgcccgatgctgcgcgggaccaatcgggtttacgagcactacggggtccccatccggctggctccgacgttgatccacgggttcgtctaccagaagctcatcagcctggaggtcacggccgatgagctccctgccatcctgagccgggccgacgcggcagtgcgtcacactggaaccgatctcgagggcgcctgggagcgccgctggctgccggagatcaagtcccatctcgctcacctctcggcattcgatctgagcggcgcaccgctgcctgtgctcctcgagcatctcgtggatgtggagcagcggatggagcgcctctggcagctgcacacggagctgctcacgccggtgctcgtcgcgctgaacgacttcgacgagatgtaccgtgacctctttccggaggcgaagccgctcgaggtgtatcagctgctctcgggctttcccaacaagaccgtcgaggcaaacctccgcctgtgggatctgggacgacgagcggcgcagaccccctcccttcgcactctcctcgcgcgggatctgggcgggagacggacggaggcccccgagcgcaccacggccgacgtgctcgccgcactctcggagttccccgaaggacgcgcgttgctgcaggacatcgaggcctacgtcggcacgtatggcgagcgcaatgatgacctctacatcgatcgtcccacgtggatcgaggacaccacacctgtgctgaatggactgcgtgaggctgtcgcgcaggccgatcgggacctcgctggtgaactccagcgccaggcggagcagcgagagacacggctgagcgaggtgcggtcgcggctcgcatccctccctcgtccggtggtggacgagttcgacgcactcctgaaagcggcccagacggcgacggtgctgagcgaggagcaccacttctggatcgactgcaagatcacctaccacgccaggcgggtgggcctggagctgggcaggcgcctcgcgcaacgtggcttgctggagcgcgccgaagacgtgttccagttgacgctcgcagaactggtggctcgccagcatgccccgctcgaagacgctccactgaaggtgctggtcgccgagcgtgaagccgagagggcccgctcttcaggggtcacgcctcctccctttctcggcgttccacggcccatcttgccgatggactgcgcgatcatgcgcgcaggattcaagttcaacggaggcccgatggggccccccagtgcgggcgatctccggggaatgccgggttccagcgggacggtgcgcggccctgtacggatcgtgcgcacccagagggacgccgactcgctccggccaaacgacatcctcgtcgccccgttcacgctgccttcctggacgccctatttcgcgagcgtggcaggggtggtcaccaacatcggcggcaccttgtgccacgcggccgtcgtcgcgcgggagtacggcattcccgccgtcgtcggcacgcagacggcgaccgagacgctccgtgatggtcagctcgtcgaggtcgacggagacgcgggtatcgtccgtgtgctgagttcgtgaggtcgagtttttcatgagagacatgacggcgtcgggcctgaaggcgtggcttgtcgcccgtgtcgcggcgatcagcgggagcgatcctcaccagattgatgcccggcagcggttcggacgccacggaatcgactcgttgcatgcgacccggctcatcgcggagctgtccacgcgcctggagcgatcgctctcaccgacactgatctgggagtacccgaccatcgaggcactcgcagcgcatctcggcggcgagacgcaacgcatcgaggaagcgagcgtgggcgctggagaaatcggcgcagcgacgtacggggccggcgagcccattgcgatcgtgggaatggcttgccgcttccctggcgcacctgacgaggcgtcgttctgggacctcctccgtgacggcgtggacgcggtcggtgtcgtgccgtccgaccgaggctgggacgaagcgctcgttgcagccggtgtcgatcgggcagagcgggacaaggtgcgacgcggtgccttcctggaccgggtcgacgcattcgatcccttcttcttcggcatctcccctcgggaggcgatgtcgatggatccgcagcaacggctgatgctcgagctgtgctgggaggcgctggagagagcaggaattccgccacgcttgctcgcgggcagcccggcaggcgtcttcgccggggccatctggtccgactacgaggccctcatgtaccgcggcgcagcaggtgcgctggatcagtatgcggtgacgggggcgcaccacagcatcatcgccaaccgcatctcgtacctcctcggcctccaggggccgagcctttccgtcgacacggcttgctcctcggggctcgtggtcgtgcacctcgcttgcgagagcttgcgccgcggcgagtgcaatgtggccctggcaggagccgtgaacctcaacctgctgccggagagcgccgtcgccatggcacgcttcggcgcgctctcaccggacggacgttgctataccttcgatggccgcgcgaacggctacgttcgcggggagggggcaggcgtggtggtgctcaagcccctctcgcgcgcgctcgcagacggagatcccattcgcgcggtgatccgggcagcggccgtcaacaacgatggcgcgagcaatggtctcaccgcgccgaatccggcggcacagaaggacatgctccgggcggcgtaccagcgcgcgggagtgctcccggcccacgtgcagttcgtcgaggcgcacgggacggggacgccgctcggcgatcccatcgagggccgtgcgctcggcgagatcctcggcgctggccgagttcctgagactcccctcctgatcgggtcggtgaagacgaatgtcggtcacctcgaggccgccgccgggatcatcgggttgatcaaggtggtgctggcgatcgagcaccgggtggtcccaccgaacctgcactttgcgtctgcgaatcccgatcttccgctggcagcgctggggctcgacgttccgaccacggcacgtccctggcccgtaccggagcgcgcgttgcttgctggggtcagctctttcgggatgggtgggacgaacagccatgccgtcgtggaggagtggcccggcccccccgtcgaggttctgccactcgccgcggagagccctcaggctctgcgggcgcgggtgacggagctgctgcacacgctgtcgctcgatgcggggcgtacgccagttcgcgaacgctgtgccgaggctgcgatccggcaccaggcagctgactcccttcacggccgccccggggcctcgttcctggctgtcacggcgcgctcccacggtgagctcgagcgtgaactgatacgcttcctcgaaagtgaggcgcagccgctccacgcgtcgaggggtgtggtgttctccttcccgggtcagggatcgcagtggcacgggatggcgcgcgatcttctgtcgaccgagccggtcttccgggcggcgatcgaggcatgcgatcgacgcatccatcagcacctcggctggtctctgctcgacgagctgacggcatcgcgtgaggcgtcccggctcgatcacatcgaggtgagcttcccggccatcgttgccgtcgacatcgcgctcgcggcgtggtggcgcgcggcggggttggagcctgcggcggtcgtcggccacagcacgggtgagatcgcggcagcccatgtcgcaggcgtcctggatctcgacgacgccatgcggatcatctgcatgcagggacgcttgctcggcgctctcggcggccagggccagatggcgctcgtcgggctgtcgtgggaggacacggccgaagcgctcgtcggattcgaagggcgagtgttccgcgcgatccaggacagcgtggacgcgaccgtggtggccggagaacccgacgcggtgacggaggtcctctctgcgctgtcgaagcgcgggatcctcggcttccccgtgcggacgaacgtcgcgccacacagccccttgtcggattcgctgcgcgaaacgctggctctgtcactgcaagcgatccgcccgcgcgccgcacggatccctctcttctcggaggtgacgggcgccgaggtcgatggtcacacgctggacgcttctcactgggtgcggaacctctgcgatccggccttcttttctgccgccatcgacgccttgatcgcgcggggccaccgactgttcctcgatgtcgggccgcaccccaccacccgtcgatccatcgagagcaatctccgccgtgcgggggtagaggggatgattctcccatcgcaggggcgggatctggacgcacgtggagagctgctcggctccctcgcagcgctccatacccgcggcgttcgggtctgctgggatgcggtctatccggcaggagaggaggtcgtcgctcctgtcgacgcgctctggctcctcccgctctcggcgcgcgatccgaaggcgctcgcaacgctgagcgcgcatcatgccgcgctggtgcgcccgggcagatcctctctccggatgaacgacatcgcctacaccgcgagtgttcggagagagcatcacccgcaccgcctcgcagcggtcgggacctcacgcgaggaagtcgggacggcacttgcggcactttcgcgcggagagctggcgcagggggccacgagtgggcgtatgccagcttcgggaccacccagggtggtgttcgtctttcccgggcaaggctcgcagtggcccggcatgggacgggcgctcctggcagcgggaggtgtcttccgccaggcgctggaggcatgcgacgaggccatccgcagagaggccggcttctcggtcctggaggtactcgcggcccccgagacgtcctcccggctggacgagatcgatgtggtgcagcccgtgctcttcgccgtcgaggtggcgctcgcggcgctctggcgctcctggggtgtcgagcccgtcgccgtggtggggcacagcatgggcgaggtcgccgcggcacacgtggcggggatactgagccttctggatgcgacccgggtgatctgccgtcgcagcaagctgctgcgcaaggtcagcggtcatggcgcaatgggcgtcgtcgagctgacgatggccgaggccgaggccgcgctgctgggccacgaggggcggttgagtgtggcggtgagcaatgggcctcgctccacggtgctgtccggagatccagacgcactcgagaaggtcctcgccacactggagcagcggggggtgttctgtcgccgcgtgaaggtggacgtggcgagccacagcccccagatggatccgctgctggacgagctgcggtcgatgctgggcgacctcgcgccaggagaggcgacgctcacgatgcggtccaccgtcacgggcgcggacgtgacgggagccgcgctggatggggcctactgggcctcgaacctgcgtgctccggtgctgttctcacggacgatccaggagctgctcacccatgggcccacgatcttcgtcgagatcagcccccacccgatcctggtgcctgccttggaagagcacctgcgggaacagcgtggtggaagcggggaaagcgcggccatcgcttcgctgcgccggggctcggacgagcggagatcgatgctcgaggcgctgggagaggtctgggtgcggggcgtcgacgtcgacttccgccccctgttcccctcggggggacgggtggtgccgctaccggcgtacccctggcagcgcgagcgcttctggctggacacgcaaacgccgcccgtcgtccatcacggcaaggtggcagcctcggggcagcatcccttgctgggcgccccattcacgtcctcacggcatccaggagagcagttctggcagcaaaacgatgtctcccgtcgcgttccgtggctctccgatcaccgcatcggtgatgacgagatcctcccgggaagcgccaccctggagatggtcctcgcggcaggagcctcgctctacggctccagcggcttcgagatctccgagctgcgtctggagaagatgctctcactgccctgcgccatcctggagctttcgatcgtacggtcggatgctggcgcggcggtggagatcgccagccgtgctcgcgctgccgtggcgtgggaacgctatgggcgcgcggaactgcgtcaggttcgaggagaagagcagacgtccgcgggggagacgctctcgaggatccaggagcgatgcaggcgcgaactcgatgtcgcggagcaccatgctcgcctggagcgactgggggtcatctacggtccccgtctccagagcgtggagcgactctggctgggagacggcgtggcgctcggtcgggtgaggctccccagcgcgctgcccggggatgaggagaccgacggggcggccatgttccacggtcacccggtcctgctcgatggcgcgcttcaggtcctgatggcgctggtgatctcgcagtctcccgaccgcctcctggtccccgtgatgctctctggcgtgcggctccgccgtcgcctccccgagcagatctgggtgcatgcgtgcggaaatgcgcagcaagcgacgctgacgatcctggatgacgaaggacttcccctgctcgaggtgcgcggattgcgctttgccccgctcggcgctgcggaggacccgttggatgcgtgcgtccacgaggtggcgtggcgtcgccgtgatctcccgcagttcgaacaagcgccagacgcccgccagcttccgggaaacgcgacgcctgggcgagatgtgatccgtctctccagcactccagagccggcctcctggctcgtgctcggtggacctcacgggacaggagctgcgctggccatggccctgcgagcgcgtggcgagccgtgcgtcgaggtcgacggtgcggaccccggaaaactcgcagcgcacctgccgcgtgcgtgccgcggcgtgatccattgtggtggcctcgaggcgacctcgtgggccgagacgacgccagccaccctggaggccgacctgcgccgtggtcccttcgcggcagtgcacctggtgcaagccatcttgcgccgtgcatttcgcgatcctccgcccctcttcctggtcacacgcggttcacgctcagcaggaccggggggggtctcggccgttcaggggacgctctgggggctgggcggcgtgatcgcactcgaacacccagaactctcctgcaaacggatcgacctgccgtccatcccatggacgggagaagtggactccctcctgcgggaactctcggcgcaggacggcgaagaacagatcgccctgcgtccagacgggcgcttcgtcgcacgcctcgtgcgcggcagcctccccggcgagcgggcggcgacaccatcgatgcgcgacggggaggggacctacctcatcgtcggtgggctgggcgggctcggcctcgcactggcccgctggatggtcgacaggggagcacgctcgctggcgctggtcggacgaagtgcaccttcggaggaggcgcgtgcggagcttcgggccctcgaagcttcgggggcggtgctgcgggtgctccagggcgacgtcgcactgcggaccgacgtcgagcgtatcgtcagcgagatccgggggtcgatgtctccgctccgtggtgtggtgcatgcggccgcggtcgtggcggatcgaacgttgctggagctgggcgaggcacagctctgggcgaccctgcgtcccaaggtcctcggtgcgtggaacctccatgcggcgacccgggaccagcccctcgatttcttcatgctgtactcctcggtgtcctcgttgctgggggtgccaggacaagccgcgtatgcctcgagcaacgccttcctggacgctttcgcgcaagcgcgcacggccgaggggtcgtcgacgaccagcctccagtgggggctgttctcgggcgtcggcgtcgccgcaccggatcagcggagccagcggctcgcctcgcaggggctcgaaagcttcaccaccgaggaggggctggagctgttcggccgcgccctcgcgcatcctcgcgccgagattggcctcttccgcttctcgctgcgtcgatggctcgagtcgattccgcaagccgcgggcatgcgctacctgtcggagctacctcgggagccatcccagccccacgaagtcgagaccgcaagcatgcgagacagcctggccaaggcgtctcccgcggaacgcctggcgatgctcgagagccatgtgagcgagcagctcggccgcgtgctgcgcctcgcgcccacccgcatcgggcgtgacgtccccttcacgaacctcggactcgactcgctgacgagcctggagacgcgcaatcgtctcgagagcagcctggggaccaagcttcaggcagcgctgtttttcacgtaccccgaggtgtccagtttggcccgccacctcctcgcgcgcctggacctcggcatggaggaagagcgcgtcgagcagacgacatccagcgcgcaggaggaggtcgcgcgggttgacgagccgctggcgatcgtggggatggcctgccgcttcccgggaggtgccgacggtcccgacgcttactggcgcatgctggagcagggggtcgacgccgtggtggaaattccgtccgatcgctggccacaggaagcgatccccggcgaccggcctgagacgcgacgggccgcgctgctcgatcaggtcgatggtttcgacgccgccttcttcggcatctcgccgcgcgaggcgacgagcctcgacccgcagcagcgcttgctcctcgagatcgcctgggaggccctggagcacgcgaggcagccttctgagcggctcacgggcagcgcgaccggcgtgttcaccggcctcaacgcgctcgattaccagcaccgcctgatcgagcgcggcatccagcatgtcgatgcttactccaccacggggaatctgctcagcacggcagctggacgcatctcgtacacgctcggcttccagggcccgtgcgtcgccgtggataccgcgtgctcgtcgtccctggtggccatttcactcgcctgtcagagcctgcgctcgggggactgcgatctggccctggcgggaggcgtcaacctgatcctctccccgtacgccatggccgcgctggcgggcacgcaggcgctctcgccggacggccgctgcaagacgctcgacgcgcgcgcgaacgggttcgttcgaggggaaggcgctggccttctggtcctgaagcgactctccgacgcacgccgcgatggcgaccgcatctgggccctggtgcgtgggtgggccgtcaatcaagacggcaagtcgagcggcctcaccgctccgaacgtgctctcccagcaggacatgctccgcaaggcgctgacgcacgccggggtctcagcgcacgagatcgggtacgtcgagatgcacgggaccggaacgccgctgggcgatccgatcgagctcgatgccctccgcgaggtggtgggcaggccccggaccgatggagcgacgtgcgtgctgggggcggtgaagacgaacatcggccatctcgagcctgcagccggtgtcgctggcgtgatcaaggccgtcctgtcgctggagcacggagccatccccggaaacctgcacttccggcagctgaacccgaggatctcgctggaggggacgccgttcgtgatcccgacggcgacggtgggttggccacgtcagacgcggcgtcgcctggcgggtgtgagttcgttcggcatcagcgggacgaatgcgcacatcgtccttgaagaatctcccggaggctcggaaggcagcgatgtcgaaacgagccctgcgacgccggccgcagttctgcctcctggatcgactcccaggctggacgccacggagcttttggtggtgtcggcaaggagcgatgcgggactgagcgctgcagcgggaaggttgtacgcacacctgcaagcgcactccgaacaggggctcgacgcagtcgccttcagcctggcgacgacgcgaagcgcattgccgcaccgcctggccatctcggcttcgtcgcgcgagacactcgccgatgcgcttcacgccgcctcgctgggagagacccctgcgggagggagtcgtgggcgtgtcgagatgggcgctcggcccaaggtggtgttcgtgtttcccggacaaggttcacagtgggcagggatgggccggcagcttctcgccgaggagccggtcttccgggaggcactgcaggcctgcgatcaggcgattcgtgccgaagccgggtggtccctcctggaagcgctccgagccgacgagggggcctctctcgatcgcatcgacgtggtgcagccggtgctgttcgccatcgaggtggcgctctccgccctgtggcagtcgtggggggtgaagccagactgcgtggtgggccacagcatgggcgaggtggccgcagctcacgtcgccggggtgctctcgctcgaggacgcggttgcggtgatctgccgtcgcagccagctcctgcgtcggctgagtgggcagggcgagatggcgctggtcgagctgtcgctcgaagccgcgcaggaagcgctcgtgggctacgaggacaagctgagtgcggcggtgagcaacagcccacgcgcgaccgtgctctcgggcgagcccgaggccctcgggcaggtcgtgtcgcggctggaagccaggggcatcttctgccggagggtgaaggtggacgtggcgagccacagtccgcaggtcgatccgctgacacaggacctgatgagcgggttgggcgcgatctcgccgcaggccgcccgggtacctatgcggtcgaccgtcaccacgaccccggtcgaaggggcggaactcggggccagctactggatggccaacctgcggcagccagtgcggttcgcccagacggtgacggcgctgctggacggcgggtatggcctgttcgtggagatgagcccgcacccgctgctggtgacggccatcgaggagatgcgccaggccaaggggccgccggggagcgcgctggcctcgctgcggcgagagcgcgcggagcgatcggcgctgctcgagtcgctcggtgcgctgtgggctcaaggacagcccgtggcgtgggaccgtgtgctgcgaggcgagggacgacgggtgtcgctaccgacgtatccctggcaacgagagcgctactggatcgacggacccatcgcacagaatgctgaccctcgcaggcatgcgggaggtcatccactcctgggtgaggcgctctcggtgtcgaccctgtctggcttgcgcgtgtgggagacgacgctggatctcggccggttgccgtggctgagagatcaccgggtgcaggatctggtggtctttccgggggccggttacctggaaatggcgctctgcgcaggccgcaccctgtggggggagcgaccgttcgccgtcaccgacgtggcgctcgtcgaggccttgacgctcacggacgacgagaccacgccggtccagctcgtgacgaccccgcaggcggacgggaacgtccagatgcaggtcgcgagccggcgcggtgctggacaggatggagactggactgtccatgcccgcggcacactcggtctcgtggcgcctgcagaagcaccagcccgtgtggacctcggggcggtgcgcgcacgcctgcgaaaggtgctctccggcgaggccatccatgccctgctgagcgagatgggcctggtgtacgggccggcgttccgcggtctcctcgagctgcgaagaggcgctgatgaggcgctcggaaaggtgtgcctgccggaggccgcagggaccacgacgggctaccgactgcacccggcgctgctcgatgcttgcatgcaggccatggcgggcgcgctcgacgacccggagcgtcgtgcctggatgccggtagccctcggggccctcgaggtggtgcagccacccgccggtgaactctggtgtcacgtgcgctttgccgaggcgcctcgggcatcgagagcgcccgacgaatcaactcctcgatcgggtccccccacaccccgacgcaagagcgccgacctgtcgatcgtcgatgcaagcggtgccttgatcgcccggctctctggcctggtggtacagcagctcgcccgaggggctcgccgccaggacccgatggccgagtggttcctggatctttcgtggagcgaggccccagcgcgagcggcacgcccggctccgggccgctacctgctgctcggccacggaggagacctgggcctctcgcttcgcgaggccctcgaacgcgcaggccatgtcgtcgtgcacgccgtcgccagcgctccgggggaggtccccaggggcacctggcccatcgacgacacgaccccggcaggtgtccgcgcattgctcgccgatgccttcggagagcgacctccgacagctctcgtgcacctgcgcgccctcgacgaaccaccccagcgtggcgcgaccgacgatgagccgctcgacgcgaaggcgctcgggaatgccctcggcatgctctacgacagcgtgctgcacacggtgcaggccctcaccgccatggcgtaccgggatcctccccggctctggctggtcacccgcggcacgcagcccgtcgaggtcggcctcctctcgctcgaccaggcccccctgctcggcctcggccgcgtcatcgccatggagcacccagaactccgctgcacgcgcctcgatctcgccgccatccactccgcacacgacctccagatgctcctcaccgagctgctggcggacgacggcgagcacgagatcgccttccgtgatgccaggcgcctcgtcgcgcgcttcctccacgccccgccggacctcccgtccgtcgccccgcagccatcgcctaccgcgccccgtgccgaggccagctacctcgtgaccggagggctcggcggcctcggccttcgcgtcgcgaagtggctcgcggagaggggcgccggccatgtcgtgctcgtgggccgcacaggcgtgacgaccgcagcgcagaaggcggccgtggccgagatcgaagccatcggcgctcgcgtcacggtggcacccgccgatgtcgcgcagcgggccgacgtcgagcggatcctctcccaggtggacgcgtcgggactgccgctgcgtggcgtcatccacacggccggagtgctggaggacggcctcctcatgcagcagacagcggctcagtttcgcagggtgatggccccgaagatcctcggggcgctgcacctggatgcgctgacccgcagagctcccctggacttcttcgtcctctacgcttcggcagccgggctgctcggctcccccggccaaagcaactacgctgcggccaacaccttcctcgatgccctggcccatcatcgcagggcacgcgggctaccggcgctgagcgtcgactggggcgccttctccgaggtcggtctggccgctgcgcaggacaaccggggcacccgcctcgctgcgcgcggcatgcggagcttcacgcccgaggagggcctcgaagcgctccagcgtctgctggacgcagagcgctcgcaggcgggcgtggtgccgctcgatgtacggcaatgggtggagttctatccggcagcggcctcctccccgatgctgtcacggctgctggccgagacgtcctcccgcacctcgcgcacggcgcagggcgttccgctcaccgaacggctcgcgcgcgcagcacccgccgagcgccctgtcgtcctgcaagccttcgtccgtgaggaagctgctcgggtcctgcgcattccggaggcccgcttcgacacgagcgcccccctcaccagcctgggcatggactcgctgatgggcctcgagctgcgcaaccgcctcgaagctggcctcggcttcaggatgcctgcgaccctgctgtggacttacccgacggtcgtggcgctgagcgatcacctgaccagccagctcgctcctctgctggacccgggcgcgacgcctgtcgcccatgaggagccccaggaagatgacccgacccctctcgatgacctggacgaggagggactgctcgccttgctcgacgagtccctcgcgcgggcgaagggatacgccgagcgtggcgcaaaggacgggaggagacgggtcgaatgacgcaacggcaagaccagctcctcgagcggctgcgtgaagccaccctggcgctgcgccgcacgctcgacgagcgagacgcgctggagcgggagaagtacgagccgatcgccatcgtcgggatcggctgccgcttccccggtggcgcatcgagcccgagcgcgttctgggacctgctcctcgaaggccgtgatgccgtcggcccgctcgccgaccgatgggcactcgtgggagtgtccccggaaggagatgtccctcgctgggcggggctcctcacggaggccgtggatgcgttcgatgcagcgttcttcggcatctctccgcgcgaggccgtgtcgctcgatcctcagcaccgcctgctgctggaggtcggatgggaggccctcgaagacgcaggcatcctcgcgggaacgctcgaagggagccgcacgggggtgttcgtcggtgcgctcacgaccgactatgctcgcctcgtcgagcagcgacctcgcaccgagcaggacgcctacgggatgacgggcaacctgctcagcgtcgccgccggacgtctctcctacacgctgggcctgcaagggccatgcatgaccgtggacacggcttgctcctcgtccctggtctcggtgcacctcgcctgtcggagcctccgcgccggcgagtgcgatctcgccctggcgggaggggtgaacttgatgctctcggcggacgtgatggaaggcacctcacgcacgcaagcgctctcgcccgacggtcgttgcaagaccttcgacgccctggcgaacgggttcgccagaggcgaagggtgcggcctcctggtcctgaagcgcctctccgacgcgcagcgcgacggtgaccccatccgggcactgatccggggctccgcgatcaaccaggatggccgctcgacggggatgaccgcgccgaacgtgctcgcccaggaagcgctgctccacgaagccctggagaacgcccgcgtcacgtcggaccagatcggcttcgtcgagacgcatgggacgggaacgtcgttgggggacccgatcgaagtcgaggcgctgcgtgccgttctgggagccgcgcggcccgatggctcacgatgcctgctcggagcggtgaagacgaacgtcggccacctcgaagctgcggccggggtggcgggcctgatcaaggcagcgctcgcactccagcacgaagcaatccccgggaacctgcatctgcggcagctgaacccgaggatctcgctggaggggacccccttcgtgctcccgacggagacggtgacgtggccacgtcaggaacgtcgtcgcctggcgggggtgagttcgttcggcatcagcgggacgaacgcccacgtggtgctggaagaggctcccgcacagaacacgccggatcgcacaggatcctcgcccccggacgagccgaccgccgccgcgctggtcgtggtgtcagccaggaacgagcaggcgctggccgatgccgcgggccgcttgggggagcacctgcaggcgcaccccgagctcgagcttcctgacgtcgcgttcagtctggcgaggacccgaacggagatgccccatcggctggcgatcgcagcgacgtcgcgcgaaggcctgctggaggccctggccaccgcgtcacgtggcgagaccccggctggtggggcgcgaggtcgggtcgagctgaggcgccgacccgaggtgatcttcgtctttcccggacaaggatcgcagtgggcagggatgggccggcagctgctcgccgaggagcccgtattccgggaggcactggaggccagtgatcgagccgtccgcgccgaggcggggtggtcgctgctgcagacgctcgagggaagccccgacgcgctccccctggagcgcatcgacgtggtgcagccggtgctgttcgccatcgaggtggcgctctccgcactctggcgctcgtggggcgtggaaccggacggcgtggtgggccacagcatgggtgaggtggcggcagcccacgtcgccggcgtgctctcgctggcggatgccgtcgcggtgatctgttgtcgtagccagctcttgcggcgcctgagcgggcagggcgagatggctctggtcgagctgtcgttcgaagcggccgaagccgcgctcgcgggctacgaggacaggttgagcgtggcggtgagcaacagcccgcgcgcgaccgtgctgtcgggcgatcccgaggcactcggacaggtgatggcgcgcctcgaaggccagggggtcttctgccggagggtgaaggtggacgtggcgagccacagccctcaggtcgacccgctggaggaagagctgacacgtggcttgcgcgatctgagaccccagccggcccgcatgcgcatgcagtcgacggtgacggcgctgcctgtcgaggggccggaactcggggccagctactgggtgaccaacctcaggcagccggtgcggttcgcccagacggtcgaggcgttgctggacggcaggcaccgcctgttcgtcgagatgagcccgcacccgctgctggtgaccgccatcgaggagatgcggcacgccaagggtgatcctggaggtgcgctggcctcgctgtggcgggagcgggcagaacgatccgcgctgctcgagtcgctcggcgccctgtgggcgcaagggcaggccgtgtcgtgggaccgggtgctgcgcgacgggggccttcgggtgacgctcccgacctacccttggcagaggcagcgctactgggtcgatctctccgcccaccgcaagaccggacaccgtggacatgccggcgagcatcctctcctcggtgaggggctgtccgtgtcggcatccgcaggcatgcacctctgggagacgaccctggatcacgacagactgccgtggctccaggatcaccgggtgcaagggctgctggtctttcctggcgctggttacctggagatggccctctcggcagggcgctccctgtggggcgaacatcccctcgctgtcacggatgtggcgctgatcgaggccctcacacccgccgacgacgaaccgaccaccgtgcagatggtcacctcgacacaaggggaggctctcgctcggttccagatcgcgagccagcgccccgccgcgacgagcgccggctggacggttcacgcgcggggcatgctccgcaggctggatcacgcgagtgctccggaccgagtggacctcggtgcactgcgggcccgcttcgaccaggtgctcgccggggaagagatctaccggctgctgagcgcaaggggcctcgactacggtccgacgttccgcggccttctcgaactacggcgcggctcccacgaggccctggggagggtgagcttgcccgagcctgcaagcgtcgcagccggctaccagctacacccagcgctgctcgacgcctgcctccagaccgtggctggcgcactcgacgacccggagcgtcgcgcctggatgccagtggcgctcggcgccttcgagatggcacagcccccgaccggggagatctggtgtcacgtgcgctttacgcaggacgatcccgcatcccttgcccccgtgacgtcacgtcccgacgtcagggcacctcggcgccagagggtcgacctctcggtgctggacgccagcggcacacgcatcgccgagctgtcgggtctggtcgtgcagcaactctcccagggggcccgccgtcatgatccgatggccgactggtttctggaggtggggtggatccagtcatcggtggggccatcccgcctcacccccggtcgttacctcctgatcggggacggcgacgggctggagcgagagcttgcttcggccctcgaagaggctgggcatgtcgtgctctgcgccgccttcggcacttccacggagccgggccttggcgcctcctcgatcgactccgcgagccttgaaaccattcgcgcgcagctctcggacgccttcggagggcagccaccgaccgccgtcgttcatctacgcaccgctgcaggtcgggcgacgccctcgacgtcagcccccctcaatacccctggtgattccaccacccccctcgatggacaggcgctcgaagccgacctctgcgcgctctacgacagcgtgctgcatacggtgcaggccctggccacgatggcgtaccgggctcctcccaggctctggctggtcacccgcggcgcgcagcccgtcgctcagcgcatcgtctcgctcgaccaggccccactgctcggcctcggccgcgtcatcgccatggagcacccggaactccgctgcgcgcgcgtcgacctcgatcccttctcacacacacctcagctccaggcgttgctcgccgagcttctggccgatggggacgagcatgaagtcgcgctccgagggacgtcgcgccacgtcgcccgcttccgtcatgccccgcctcgaccccttcagcccctcacccagctcgaacccgtggaggggcgtcccttccggctggagatcgagcccccgggcgttctcgatggcctcgaactccgcccggtggcgcgccgagcccccgggcccggcgaggtcgagatcgccgtcgaagccgcaggactcaacttcgtcgacgtgctgaaggcgctcgggatctacccgggcatgaaggacggccccgtcgtgctgggcggcgagtgcgcaggacaggtcgtccgcgtagggcccggtgtcgaaggcctcgtcgcagggcagcccgtgctggcgatggctccttgcagcttcggctcccacgtgacggtcggcgcgcggtccgtggccccacgcccctccgcgctgaccccggcccaggcggccgcgatccccgcggtgttcatgaccgcgtggtatggcctcgtgcatctggcgcgactccaggcgggggagcgggtgctcgtccactcggcgacgggcggcaccgggcaggcagccctccagatcgcacgacacctcggggcggagatctttgccaccgccggttcgcccgagaagcgcgcctggttgcgcgagcagggcatcgcccacgtgatggactcgcgctcgctccacttcgcggacgaggtgctcgcagcgacccgcggcgagggagtcgacgtcgtcctcaactccctctccggagacgccatcgaggccagcctctccgcgctcgcccccgacggccgcttcatcgagctgggcaagaccgacatccacgccgaccgcgcgctggggctcgcccatttcaagaagagcctctcgtacagcgccgtggacctcgccggcctgtccgagcgccgaccccagcgcttctcggcgctcctccacgaggtggtcgcgctgttcgcgcgcggcgtgttcgcgccgctcccggtcgagacgttccccatctcccgggcgagcgaggcattccgcaagatggcgcaagcgcagcacctcgggaagctggtcctcgtgacggacgatgccacggcgcgcctccggatcacggcgaccgcaggaccgcgcatccgacccgacgcgagctatctcgtgacgggaggcctcggcggtctgggactgagcgtcgctcggtggctcgccgagaagggcgcgggtcacctcgtcctgatcggtcggtctggcgcggccaccgcagcgcagcaagcggcagtcgccgagctggcagccacggggacccggttgaccctggtgaagggcgacgtcgccatgcggacccagatcgagcccgccttcgacgccatccgctcctccgggatgccgctggccggcatccttcatgcggcaggcctcctcgaagatggcctgctcctccaccagagcccgaacgcattccgccgcgtgatggccccgaagatcctgggcgccttgaacctcgacgccctcgcggcgaatgccccgctcgacttcttcgtgctctacgcctcgggcgccggcctgctgggatctccagggcaggggaactacgccgcggcgagcaccttcctcgacgccttcgcccaccatcggcgggcgcgtggactgccagcgctgagcgtcgactggggcgtcttctccgaggtcggcctcgccatcgcgcacgacgaccgcgcggcgcggctggcctcacggggagcgcagagcctgacccccgcgcagggcatcgaggccctggagcgcctcctcgacgggggcagcccccagacggccgtcgtacctctggatgtagcgcagtggctcgcgtcctacccggcagccgcttcttcccccatgttttccgacctccacgtcgagcgacccacgctcaccgcccacgccagcgcggagacgctcgccgagcgactcgctcgtgccacgtccgaggagcgcggccccttgctacaagcgctcgtgcgcggcgaggtctctcgcgtgctccgtctccctgagagctcgctcgatatcggtgcgccactcaccagcctggggctggactcgctgatgggcctggagctacgtcaccgcttgagccgcagcacgaccgtggatatccccgtggcccgactgctgtccgacatgaccatcgaacgactctcctcgctcctggttcatccgacctccggaccgaccgcggcccccgtggagcgtcaggaagccgaggcctgggtggacaccgagctatgagcgatctgatcgacctcctcagtcacctgctcttccacggcgtggagctgtccatcgaaggcggcaaggtccgggtccgagcgcccgatggcgtcctgacgaaggagacgctggagacactgcgtagccgcaaggacgagctggtgcgcgtcctccccgagcaccacgtcgagtcgccgctctcggtgggtcaggaggggctctggttcatccagaagagcgctcccgagagcgtcgcctacaacgtcgcgttcgccctgcggatcgcgtcggagagtgaccccgccccagcgctccgccgcgccctccagaagctcgtcgatcgtcatgccgtcctgcgcaccaggttcccggcggtgaacggcaccccacggcagcgggtgcgtggtcatcacacgctcgatctccacgagaccgacgcctctggcatggacgccgagacgctgtcgcgggccacggctgccatccaccagcgcccgttcgatctcgaacgagaaggcgccttccgcgtgagcctcctccgctgcagcgcgggcgaggtcttgctgctcctttgcctgcaccacatcgcgtgcgatggatggtccttccggatgctggtggacgagctgctccgcctctacgaggccgacggaaagcccaacccgctccctcccgtccgtcggacgtaccagcagttcgtcgcgtggcaaggtgagcgcctggcctcccagggtgagacgctccgccgcttctggtcgaacgaacttcatggcgcccccctggtgctcgacctgcccacggatcgcacgcgcccccccgcccagaccttcaccggcgcgacccatgagcgggtgctggatccggcgctcgtcgaaggcctccgcgccttctcgcgcgagcagcgcacgaccctctccaccgtccttctctcgggcttccagctcttgctccaccgcaccagcggccaggaagatctctgcgtcgggtcgatcgtggccggccgcgagcacgaagagttcgcgggggtcttcgggtacatggtcaatcaggtcgccattcgctcgtgcctcgacaccgccggcgcgcagggctttgcttcgctggtccggcagacccgcgatcgcgtcctggcagcgatggagcggcaggaccatcccttcccgcgtctcgtccaggatctgcacgtcgagcgtgatccgagccggcctccggtcgtccaggtctccttcgtccatcagcgcgtgcagtcactcggggagactgccacccggctcctcgctggcgcgcccgtcgtggtgggggccacccgcttctccctcgtccctcagcagcagcgcatcagcgaactcgatctgaccctggaggtgaccgagcggcccgagagcgtcaccctcggcctccgctacaacaccgacctgttcgacgcctcgagcatcgagcgcatgtccagccacctcgagacgctgctcgcggccggcgtcgcccacccagagcgacccgtcagcctgctccctctcctcggctcggaggagcgcgagcatgtactcgtggcgtggaaccgcaccgcactggatcacgatcgctgcgccaccctccatggcctcttcgaagcccaggcacagaagacccccgacgcgacggccatcctctgcggcgatcagtccaccacctacgcggcgctgaaccgacgggccaaccagctcgcgcatcacctgcggcgccagggcgccctccccgagagccgaatcgccgtctgcgtcgagcgctccctggacatgatcgtgagcctgttcgccgtgctcaaggtcggcgcagcctacgtacccgtcgatcccgcctaccctcaggcgcgtcaggccttgatgatcgaggagtcccaggcagcgctcctgatcacccgcggcacactcggtgccagctttgcgaacgatcggctccgtcgggtcgccctcgatgaagcggcagcccccatcgctgcggagccagatggggcccttggtacgcaggtcctctccgatcagctcgcatacctcctcacgacctccggctccacgggcaggccgaaggccgtggcgatcgagcaccgcaacgccgtggcgatgctccagtggtccagggcagagttccccgtggaggtcctccgcggcacgctcgcctcgacctcgatctgcttcgacctctccgtcttcgagatcttcctcccgctcagcgtcggcgcgaccatcgtcctcgccgacaatgcgctcgcacttccgcacctcgcggcgcgcgagcaggtgacgctgatcaacaccgtgccctcggccatggcggagctgctgcgccagaacgccgtcccgaagagcgcccgcgtgatcaacctcgcaggggagaagctcagccaggagctcgtccagaagctctacggactcccgcaggtcgagcgcgtctacaacctctacggtccctcggaagcgacgacgtactccacgagcgcgccgatggtgcgcggcgaccagcgggacacctccatcggcaggcccatcgccaacacggtcgcctacctcctcgatcggcacttcgagcctgtcccgccaggcatccccggcgagctgtatctcggcggcgaggggctggcccgcggctacttcgagcgtcccgccctcacggcggagcgcttcgtaccgaacccgttcggtcctggccgcctctaccggaccggcgacctcgctcgccatcgtccggagggtgaactcgagttcctcgggcggatcgacaaccagatcaagctgcgcggcttccgcatcgagctgggcgagatcgaggccgcgctgggccgcatcgcgggggtcgacaaggccatcgtcgtcgcccacgggaccgcaccccgacagcatctggtcgcttactggacggcatcaggggaggggatcgtcgaagatctccaaccccagctcgccacgacgctcccggtcttcatggtgcctgacgtctacgtacgcctcgacgccttcccgctcacctcgaccggcaaggtggatcgccgcgcgctgccggccccttcgctcaccgacatgaaacgcagcgcgcaccgcgaaccggagacccccaccgagcagaccctcgcctccatctggcgcgaggtgctcggcgccgtgcggatcgggttggacgacagcttcttccacctcggcggccactccctgctgagcgtccaggtcctcgaccgcatccggacgaccttcggcctggagctaccgctgcgcgccatgttcgagatgcccaccgtccacgtgctcgcgaagcacatcgatgccacgaacgcgctccgtcggctcgcccagagccagcccgcacccggaagtgcgcgccgccagtccggaagactttgagcactgcagcgcctcgttcgaggcgcccccgttcgcccaggatccccgccgaatgaagagcctccacgatctcgtcgcccgcctcgaagcacttcacgtcgaactctggaacgacgacggctaccctgggctacagcgccgcggaaggcgtcctcacggacgagctgctcgacgagcttcgtgaacacaaggacgtgctcctcgccatgctgcgtgaagggcaggggaccgtcgcccacgccccccctcgtcctctccctcacgccgacgtgctccccgtctcgcaggcgcagcgtcgcctctggttcctgtgccagctcgacggcgcgagcgtcgcctacaacatgcccttcgtcacggccctcgacggccacctcgacgcccgggcgctccagcgtgccctcgacgagatcatccggaggcacgagagcctccgcaccaccttccggttgcaagcggagggcccggtccaggtcatccatccacccgcccccctcgaccttcccctccatgatctccgcagcctcgacgagccggcccgcgccgccgagatccagcgccggatcgatcgagccgcgcaccagcccttcgacatcgagcgcggccccctccttcgagcccagcttctgcgccagtcggagacccggcacgtcctctgcctggtcatccatcacatcgtcgccgacggctggtccatcggcgtgttcgtccgggaattcgaggccctctatggcgccttctccgcctcgcgtccttcacccctcaccgagccccccctccagtacgccgacttcagccgctggcaggaagagcgctttcccccgagcgccgtcgaacggcacctgacctactggaaacagaagctctcggacgtccagccgctccagctcccggccgatcacccccgacccgccgtggagtcgttccgcggcgaccacaccatcttccgcctggaccgaggcctcaccaggggcctccacgagctcgcccagtgcgaaggcgtgacgctcttcatcaccctcctgtccgccttcaacgtgctcctcgggcgctactcggggcaggacgatcttgccatcgcgtcgggcaccgccaaccgcaagcacgccgagctggaaggcctgatcggcttcttcgtgaacacggtggtcatccgcaccgacctctcgggcaaccccaccttccggactgtgctctctcgcgtgctggcgtccgtcatggaagccaccgagcacgaagacctccccttcgagcgcgtcgtcgaggaactgaaaccggagcggaccgcgagccacaaccccctcgcgcaggtggcgctgaccctccagagcttcgcgagcaaccgtctcacccttcccgggttgacgacgtcaccctgtgacttccgcttccgcacttcgaagctcgatctcatgctcctcgtcaccgaggtcgatggggagctggaggtggtcgtcgagtacaacaccgacctcttcgaagacgccaccatcgcgcgcatgagcgcccacctccgcacggtgatggccgcgatggtcgcggatcccggcgctcggatcggcgacatttcccttctcacgaccgaggaacgccaccgcctcctcgtcgactggaacgacacggcgctcgcctgccccgaagccgagggcgtccatcacgccttcgagcagaacgccgcacgacagcccgacgccatcgccgtcgtcttcgacggagaccccatctcccgcatcacctacggcgccctgaacgagcgcgcgaaccagctcgcgcaccacctgatccagcaaggcgtcggaccggatgtggtcgtggggatccacgtcgagcgctcgatcaccatgatcgtcgcgctcctcgccgtgctcaaagcgggaggcgcttacctgccgctggacccgacgtacccgcagcagcgcctcgccttcatcctggccgacgctggcgcgcaggtgatcctcacgcaggagaagtggttcgacgatctaccgcctcacacggcccgtgtgctcgatctggacgccatcgctccccagctcgacgcgaacgccaccagcaacccacctctccgggccaccgccgatcacctcgcgtacatcatctacacctccggctcgacgggcaatccgaagggggtgctgatcccacgccgagacacctggagcgtcgccagggcgctcgcggagacctacgcgctcacccccgagagccgcgtcctccagttcgcttccttgaacttcgacggctccgtcgtcgagatcaccatgaccctcttcagcggcgccgcgcttcacgtggccccccaggagaagctcctgccaggcgctccgctcaacgccttccttcagcgccacgccatcacccacgtccagctcgcgccatcgctcctcgcccgattgccccccgaaggcctcgaacacgtgcgaaccatcatggtcgcgggcgaggcgagctcggtcgggacggtccggggctggctccccggcaggcgcatcctcaacggctatggccccacggagacgaccgtgggcgccgccatgatcgccttcaccgaggccgacgacgcctacctggcaaagctcgacgcattgcccatcggccgcccgttctacaacaagcgcgtctacctcctcgacgcgcgcctccagcccgtccccgtcggtgtcccgggcgagatctacgtcgcctcaccagggctcgcccgcggctacatcaaccgcccggccgccacggccgagaagttccttcccaacccgttcagcgagacccccggagaacgcatctacaggaccggcgatctcgcacgctacctgccggacggcaacctcgtcttcctcggccgcgtcgacaaccaggtgaagctgcgtggcctgcgaatcgaactcgaagagattgagagcgccctgaagtcgcacccgcacgtgggcgacgccgccgtcatcgtgcacgaagcccccgccgatcaggcgaccagcgagcgagacggcaagcgcctcgtggcttacgtggtcccccggcgtggatgggagcccgagggggcgcagagcgatcacatcgcgtcctggcagacgctgcacgagcagctcctcgatgagtctcaggcccccgaggactggtcgttcaacatcaccggctggaagagcagctacaccggcgaagccctgccggccgccgagatgcgcctctgggtggagtcgaccgtcgagcgcatcctcgctcatggcccgaaggacgtcctggagatcggcacggggaccggcctgctgctcgcacgcatcgctccgcgcgtcagggcctacctcgcgaccgacttctccctcgaagccatccgctacctggagacgtgcaaggcccgggcgcccgagctgtcgaacgtcaccctcctgcaacgcatggccgacgattttaccggcttttcggcgggacagttcgacaccatcgtcctcaactcggtcgtgcagtacttccccacgctcgattacctgagcgcggtgatcgagggagccctgcgggtgctgaagccgggcgggacgctcttcctcggagacatccggaacctcgccctcctggacgcgttccatgcgtccgtgcagacggcgaaggcctctggcacgctctctcgcgacgagctgcgttaccgggtccagcagggcgtgatgaacgagaacgagctggtcatcgatccacgcttcttcaccgccctctcccggaagttcccccagatcacccacgtcgaggtcaccccgaagcgaggcctgcatcgcaacgagctgaccctgttccgctacgacgtggcgctgcaggtcggcggaacgccgaagggcgcaccgacgatcacctggttcgactggcgagaagaaggcctgacctcggacagcctgcccccatggctctcggacacgctggccacctccccggatgctggcgtcggcctgcgcagagtccccaacgcccgcctgcaaccggacctcgccatcctgagctggctcgcgacccgcgccgaagcgtccctcgatgcctggcgcgcacgccagcacgacgttccggagggctgcgcgccggaggccctgtgggccctggaaaccacgtggcctggccgcgtccacctgagctgggccgcgggtcaccccgacggaagcttcgatctcgtcgtcaccccaccccaggccgagcgacgtgccccctggagtcccgccgtcgacctcaccgacgagcagctctcggcgtacgtgaaccatcccctccaggcgaaggtcgtgcgcgagaccctgggccaggagctgcgccgatacctccaggacaagctccccgcatacatggtgccgacggtcctgatccccctcccggcgctgccgctcacctccaacggcaagctggaccgccgcgccctgcctgcccccgacatcgagcgccgcagccgcgcgtccacctacgtcgccccgcggaacgcgcgcgaggagaccctcgtcgccatctggagcaaggtgctcggcgtcgatcccatcggcgtcgaagacaatttcttcgaactcggcggcgactccatcctgagcatccagatcgtcggccaggccaagcaggcggggttcagcctcacctcccggcagatgttcgagcaccagaccatcgccgccctggccgaggtcgccagtgccagcaagtccatccaggccgaacaggggctcgtcgaaggatcgatcccgctcacccccatccagcggtggttcttcgagacccaccaggagacgccggaccacttcaaccaggccatcctcctgaaggtctctgccgacgtctcggcatcacggctggagcaagcgttccatcacctgttcacccaccacgacgccctgaggatgcgcttctctcgcaccgccgacggcttcgagcaggtcaatctcggccccatcgagggcgtcaccgtcgacgtcatcgacctcgcgcacctccccgccgcggaacagacccgggccctcaccgaggcggcgacgagcttgcagcagcgcctgagcatcacctcgggccccctctcgcggatcgccttgatccacctgggggcggaacaaccagcgcgcctgctgtggatcctccatcacctcgtggtcgacggcgtctcgtggcgcatcctgctcgacgacctcgtcaccgtgcttcgccagctcgaggcaggccagccagcgcggtttccgcccaagaccacctcgttcaaggagtggtccgagcggctccacgcgacggcccagcaggagcaagcgaacaccgcatcctcacgcgctgagcgggatgcctggcgctccgtgcccgtccccgcgttgccgctcgatcacccccagggaacgaaccgcaaggcctcggcggcccaggtccaggtggccctctccgtggccgacacccacgccctgctccatgacgcgccgagggcctacggcacccaggtcaacgacctcctcctcaccgcactcgcgctggcgttcaacgcctggaccggcgacgcgaccctcgcgctcgatctcgaaggtcacggccgagaggaggacctcgtcggcgccgatctctcgcgcaccgtcgggtggttcaccacgatgcaccccgtcgcgctgcgcctcccgggccgcgagctgagcctcgcgctgagggccgtgaaggagcagctccgcgcccagcctggccgcggcattgcctatggcctcttccgctacgcgagcggggaggggagcctcgcctcctggcctgcaccgcaggtgaacttcaactacctcggccagctggacgcgatgaccgacacggcgcctctcctcggcttcgcccccgaggagatcggacccagcgacgggcccaccggagaccggacgcacctgttccaggtgaacggcatggtcaaagacggttcgctccagttcacctggacctacagccgcgagctgcatcgcccggagacggtgcagaagctggcgcacgacttcgccgagacagcgcggcggctcacccagcattgcctcgcccacgagagccatcccacgccgggggacttcccggcggtcacgctctcccagaaccagctcgacgtggtgctcgacgccctgggcgcggatcgcgacaacgtcgccgcgatctaccccctcacatcgctccaggagggcttgctcttccacagcctgtcggcggttcccgcgcccgtccccgccctggcggatgaagatgacgaggaggacgacgaactcgatgaggagttcgatgcggaggtcgacgaggaagatgaagacgaggaggaggaggaggacgacgacggcgagaacgtctacgtcacccagctcgtctttcgcatccagggccccctggacgccgagaagttccgcacggcctggcaagagaccgtccagcgtcacccgctcttgcgctcacgcttcgtctgggagggctgcgaacggccgctccaggtggtgctccgcagcgccgacctccgctgggaagaagacgaactggaggaggattcctggtcctccccgctgcgcgtccacgcccgccgggaacaacaggcagggatgctcctcgatgaagcccccctgttccgcctgaacctccttcgcgcggaggacacggagcaccacctcatctggacgtcacaccacatcctgctcgacggctggagcggtcccctcatcctgaaggacgtcttcgcctcctacgatgcccagctcctcggggagtcgcgcaccgcggccgatccgcccccctacgaggcctacgtcgcctggctgaagcgacaagacgggacggcgtccgagcgattctggcgcgagaacctgcgcgggttcagcgcgccgaccccactcgtcgtcgacaacgaggagcccaccgggaagcagaagcacctccatcaccgttgcaagctctccgccgagacgagccaggccctcaaagccctcgccgagtcctttcgggtgacgctgagcaccgtctaccaggcggcgtgggccctcttgctccaccgctacagcggcatgtccgacgtgctcttcggcgtcaccgtatcgggccgcgaagcggatgtgccaggcatcgaggagatggtcgggctcttcatccgcaccgtcccgctccggctccacgtcgacgaaagccagacgctcggcgcgtggctgaaggaggtgcaagcgcgtcagatcgagcagcgcgagcaccagtacgtctcgctggtggacatccagcgctggagcgatgtcccgggaggcactcagctcttcgacagcatgttcgtcttcgagaactacccgctcgacagcgccttgctcgaacagagtggcctccgcttgaccgtcagcaccatggcgagcccgacgcactaccccctcgtcatcgccgtggtgccaggtcgaaccgtggagacgctcttcgaccacgacacctcgcgcctgagcaagcacaccgtcgagcgcctcgcggcgcactgggtagagcttctgacagggatggccaggcgtcccgacgcgcggatccacacgctgcctcacctcaccagcgccgagcgagagaagctcctcgtgacgtggaatgcgaggccttacgtggacgaacagaggaagtaccgaggggaggaggagcccttcggcgaggagctcgcggcagagagcaccttcctcgacctcttccagcaccatgtcgcgcagacccctgacgcgctcgccctcgtcggtccctccctgcagtcgaccgacgagcgcccggtgtcacggacctaccgagcgctctccgcccgcgtccatctgctcgcgcgccatctccgggggctgggcgtcgggcccgaggtcaccgtcggcgtctgcctggaccgctccatcgagctggtgatcggcatgctcgccatcttcgaggcggggggcgtctacctccccctcgacccctcgcaaccgctcgagcgcctcgcctacctcgtgtccgatgcgcggcccgaggtcgtcctgacccagcaacgctggaacgatcgcctcccggagcaggccacccgccgcgtggcgctcgacaccgcgtgggcggagatcgaagcgcagcccgaggtgtcgcaccagcacaggaccgctggcgacaacctggcctacgttctttacacgtccggctccacgggcaccccgaagggcgtccaggtgacggtcgacaacctgtctcgcctgaccccggccctcatcacggccttcgacgtcaccccgcgcagccgggtcctccagtactcctcgctgagcttcgacggatccatctccgaggtggcgatggccctgggcgcaggcgccgcgctccacctggcgccggcgcacgagctggtgccgggtcctccgctccagaagctcctcgcgacgcgcgccatcacccacgtgaccctcttgcctgcggccttgcgctggctctcgcccaggggcctgcccgcgctcgacgtcctgatcgtcaccggagaggcctgccccgcctcgctcgtgcgcacctgggcctcgggaaggcgtttcgtcaatgcgtacggtcccaccgagatcaccgtcgccgcgaccgccatggagtgccccgtcaccatgttccaggagaccgagcagcccccgcccatcggatgccccctccagagcaccgagatctacatcctcgacgcgcacctgcgccccgtcccggtgggggtccctggtgatctgtacatcggcggcgccaagctcacgcgcggctacatccaccgccccgcgctgacggcggagcgctacatcccgcaccccttcagcgaccgacccggcgcgcggctctacgtcaccggcgacatcgctcgctaccagctcgacgggaccatcgacttcctcggccgccgggacaaccaggtcaaggtacgcggctaccgcatcgagctgggtgaggtcgaggcggccttgaacgaccaccccggcgtccgggaagcggtcgtcgtcgcgcagaaggacggggcaggggacaaccggctcgtcgcctactgggcggcgaagtcgaccccccccacgaccaccgaggcgctgcgcgacgccctgagcaaacggctcgcggcgtacatgatcccgtcggtgttcgtccgcatggacgcgctccccctcaatgccacgggcaagatcgaccgtcagggcctgcctcccgtcgacgacacgatgctggatcgcgagcagttcgtcgccccgcgcaccgcgaccgaggagacgctcaccgccatctggtccagcaccctcggcgtcgcgcgtgtcggcatccgcgacgacttcttcaagctcggcgggcactccctgctggccctgaacatcaccacccagatccagaagcgcttcggtcacgtcatcacggtcgacagcatcttccgcgcgcccacgatcgcggtgctcgcccgggtcatcgacgaggccctcgcgcccacgggcgcacgcagagcgctctccctcgtcgttcccctccgcgagcgcggtaccaaggtccccttgttcttcgctgccggcatggggatgcacgcccactatctccggcctctggcggagcacctcggcgaagaccagcccttctatgccctccagtccccggcgcagggaggggagatcacggacatggccacgctggtcgacacgctgatcggcgccatccagcagatccagccctcgggcccgtaccacctcggcggacactcggcgggcgcacgcatcgccttcgcggtcgccctggagctacagcgtcgaggcgccgaggtcccgctggtgagcatcgtggacatgcgccccccgggcaggggcgccacgtcggacgagagcgccgagtggacccagatcggcgggctgatcggctacgtcaccatgatcaagcaagccatcggggagggcgtgctcttcgtcaccccggaggagctgcgaaagctcgatgaagccgctgcctggcagcgcaccctcgatgcgttcatcgcggcgcgatggatgccgaaggacgccgacgtcgagcagctccagcacctgtgcgccatgaaccagaacgtcgtccgggtggtccgggaccacgtcccgacggacacccatcagggaaaactcctcgtcttctccgccgcgttcgccatgcgcaacggtcgccaggtgagcacggagggttggcaagcgttctgcgcgaacccggtgacgacgcacgaggtcccgggagaccacatgacgatgctccgggagccggacgtccggggactcgccatcaagctacgccgtgagatcgacgagctcgccctggagcgcacggacgaagcgcccgggcttccgaccccgcccgagtttccggtggtctgggagcaccccgaggacgcgcggatgctgtgggtccatgacgtcacccactgccgagagcagatgacccccctcgacttctgtctccgtcagcaggcgatggtcgaggggagcaacctcgccaacctcgcgtacggggtccctttcaccggcgaaatccgcctgatcaacacgtacgtctaccagaagatcatcccgaccaccgcgtcgccgaccgagctcgccgcggcgatgaagcgagccgaggccagcgtcgccgccctcctccccgacctcgggcgctggtggacggagaccttgctgcccgagatcgaggcgcacctcgaagccctggatcccgagaacaattacgacttcgtccacaggcacaccctcgtggaggccctcgccgaggcgcatcgtcggacggcgcgcctctgggagattcattttcgcctgctccagccggtcatgctggcgatcagccggttcgtcgacctttgcaaggacctctccacggacgacgaccccatcgacccctacgcgcttctggtcggcttcccgaacaagaccaccgagggcaaccgcgccttgtggtcgctcagccggctcgccctggagacccccgaggtggccagcatcctgaccagcaacgaggcgtcgcgcgtcagctggaagctcagaagcacacgcggggggagagccttcgtcgcgcaactcgatgcgtacctcgcgacctacggtcagcgaaacgacagcacgtacctcgacgcccccacctgggaagaagacccgacgcccgtcattcgcaatttgcaggcgtacatgacgcagccggagcgcgatctcgacgccgagctgaacgccctctcggagcagcgcacacagcgcctcgatgccctccgggcgcgcctccgtcattacccgagagccgtggtggacgagttcgagcaggcgctcaccgcggcgcagacggccacggtcctcagcgaggatcacaactactggatcgattacaagatcacccaccgccttcgtcacctgtgcctctacctcggtgagcagctcaaggactgggagctgctcggcgattgcgaggagatcttctacttgtcgatggatgacgtgagccgagcggcggtcgagacgaagcgagggggaccattctccgccaaccagcgcttctatcatcttgcctgcgcccggaaggacgaggccaagcgcttccacggcgttcagcccccgcgcttcctcggcacgccatcccccttgccggccctccatgacgcactctcgctcgcgagcgccaggttcaccggcgtggcaccgagcccttcgaacgacgagaaggaaatcgtcggcctctccggtgccaaagggaaggcccgcggcaaggcccgcgtcgcgcgcaacctcgccgacgtccccaccttggagcccggcgagatcctcgtcgccatggccatgctccccgcctggacaccgctcttcgccaccgtcgccgccatcgtcaccgacagcggtggcatgctgagtcatgccgccgtcgttgcgcgggagtacggcattcccgccgtcgttggaacgcaggtgggcacgcagcgcatccgtgacggtcagctcgtcgaggtggatggcgagcgaggcgtcgtcacgcttctttgaacggttcctcacttgacatcgcgcactgaatgtcaggaagtacacacccaacatgcaattgccgagttcaacgaagatccttgtcgtaggtggcggccctgccggttcgacggcggcaaccctcctggcccgtgaaggcttcgaggtcacgctcgtcgagaaggccattttccctcgctatcacatcggcgaatcgctgctcatctccgtacagccgatcatcgacctgctcggcgcacgcgaggccgttgaagcccacggtttccagcgaaaaaagggcgtgctctgggagtggggaggggagcgctggctcttcgactggaagaagctccgctacgattacaccttccacgtcaagcgcgaggaattcgacgagattctgctcaggaatgcgcagaagaacggcgtcaaggtattcgaagggatcgacatcagccgcctcgaattcgacggcgaacgcccggtcgctgcgaaatggtcgaagtcgagcaccggtgaatccggcacgattcagttcgagttcctgctcgacgcatcgggccgcgccggcttgatggcgacgcaatacctccggtcgcgcatgttcatgaaggcattccagaacgtcgccacgtggggctactggaagggggccaccatccccgaggtcgaggtcgagggaccgatcaccgtcggctcgatcccctacggctggatctggggcatccccctgcgggaccagacgatgagcgtcggcctcgtcatccaccaggagctgttcaaggagaagcgcgcgacccagtccgtcgaggagatctaccacgagggcctcaaggcctcgccgctcttccaggacgtcgtcctcaagggcgccaccctcgaaccccagatccgcaccgagacggattactcgtacatctcgcggaccttggcgggacccggcttcttcctcgtcggcgactccggcgcgttcatcgatccgctcctcagcagcggcgtccacctggcgatgcacagcgccctcctcgccgccgcgagcgtgaagagcatcatcgccggcgaggtcgacatggccagcgcgaccgagttctaccagcgctgctatcaaggccacttcctccgctgggccctgatcgtcgcctccttctacgaggtgaacgctcgcaaggagacctacttctggacggcccagcagctcgcgcacgaggaactcggcgtcttcaacatgtcgcaagcggacatgaaggatgtgttcgcgaccatggtctcgggcgtggtcgatctcggtgacgcccagaacgccggacgcttgcagaagggcgcggagcgcgtccaccagtacctcgacgacgacggccgcgaggaggacgtgacggcgctgctgcagaagagcaagcaacgcatcttcgagtacctggatcgcgtcaagaaccgcgactcgcgggcagcgatgcagcgctacaaggccggaggcaccgagaccttctccatgggcctcgacgccgacggcgccgtgggtgggctctacgtgaccaccgaaccgcggctcggcctcttgcgaaaggtggtcgaggaacgcgcagaggcggcgaccgaagcgccagccccggcggcgccgcctcctgcggtggccgaggtctgagatgaggctcgccgtgagcgggagcgaggggggagacgctcctcatcaccgatcgcggcgcgaggcgcgcatgtcccgggagcctctccctggacgcgcgccaggattgatccgagaacgactgagctgacacgggcgagagaagtactgcatgaaaatcactggctccaacctgtccatctacgacgtcgctgacgtctgcatgaaacgcgcgacggtcgaactggacccgtcccagctcgagcgggtggcggtcgcgcacgagcgcacgcaggcctggggagaggcccagcacccgatctacggcgtgaacaccggcttcggtgaactcgtgcccgtcatgatccccaggcagcacaagcgcgagctgcaggagaacctgatccgcagccacgcggccggcggcggcgaacccttcgccgacgatgtcgtccgcgccatcatgctcgcccgcctcaactgcctcatgaaaggctactcgggcgccagcgtggagacggtgaagctcctcgccgagttcatcaaccgcggcatccacccggtcatcccgcagcaaggctccctcggcgccagcggcgacctctcgcccctctctcacatcgccctggccctcatcggcgaaggcaccgtctcgttcaagggccaggtcaggaagaccggcgacgtcctgcgggaagagggcctcaagcccctggagctcggcttcaagggtgggctcaccctgatcaacggcacctcggccatgacgggcgccgcgtgcgtcgccctcggccgcgcgtaccacctcttccgcctcgcgctcctcgcgaccgcggacttcgtccagtgcctcggcggctccacggggcccttcgaggagcgcgggcacctccccaagaaccacagcggccaggtgatcgtcgcccgcgagatccgcaagctcctcgccggcagccagctcaccagcgaccaccaggacctcatgaaggagatggtcgcccggagcggcgtcggcaacgacgtcgtcgacaccggggtctacctgcaggacgcctacacgctgcgcgccgtgccccagatcctcggcccggtcctcgacaccctcgacttcgcccgcaagctcatcgaggaggagctgaactccaccaacgacaaccccctcatcttcgacgtgccggagcagacgttccacggcgccaacttccacggccagtacgtcgccatggcctgcgactacctgaacatcgccgtgaccgagatcggcgtgctcgccgagcgccagctcaaccgcctcgtcgatcccaacatcaacggcaagctcccgcccttcctcgcctcggcccacagcggcctcctgtgcggcttcgaggggggccagtacctggcgaccagcatcgcctcggagaacctcgacctcgcggccccctcgtcgatcaagtcgctcccgtccaacggctcgaaccaggacgtcgtgagcatgggcacgacgagcgcccgcaagagcctgcgcctctgcgagaacgtcggcaccatcgtctcgaccctgatcgccgcgtgcaaccaggccggccacatcctcggcaacgagcgcttcagcccccccatccgcgagctgcacggcgagctgtcccgctcggtgccgctgtaccaggacgactcgcccatcttcgagctcttccagacggtgcgcgcgttcgtcggcggcgacgggttccgcgcccacctcgtcacgcatctcgacctcgcggcgacgaccgcgtcatcctgagccgggcaggggaagggccgatgcgtgcgatcctctggctggacgagcccggatgcgacgatccggcgctcgtcggaggcaaggcctcgggcctcggccggtggacggcccatcaccaggtcccaccgggcttctgcgtgaccgcagaggccctggcccatttccccgagatcgcggccgagcccttccccgaagcccttcgagggctcgtcgccgacgcctacgccgccctcggcgcgcgctgcggcacccccgagcccaacgtcgccgtccgctcctccgcggtcgacgaggacggtgccggcgcctcctttgcgggcatctacaccaccttcctcaacgtgcgcggcctcgacgccatcctcgatgccatcgcccgctgccacgctgctgccgccgacccgcgcgtggccgcataccgtacccagcgcggcctgaccggcgcaggcatcgccgtgctcgtccagcagctcatccctgccgacaccgccgcggtcgtgttctccgcgaaccccacctcgggcgccaccgacgagatcgtgatcaacgcgagcttcggcctcggcgagagcatcgtcggtggctcgaccaccccggacacctggatcctgcgcaagcccgacctgtcgctcctccgggcccacaccggcgagaagcagaacatgaccgtcctctgcgagggcggcacgcgcgaggtccctgtcccgcggaccttgcgcacccggccgagcctcgacgagcccctcgtccagcagctcgcccagctcgccctccgcctcgaagaagcggcgggcaagccggtcgacatcgagtgcgcttaccgggacgggcagctctacctgctccagtgccgcccgatcaccaccctccgagccgaaggccagcgcccccggtcctgagccgagaaggcctcgatgtccgcccaccgcgcgtggaagcggcggtatcgagcggcatgaggcctccgtcacccgccccggggccctctgctcacgcgcggtccttgcgcagatcctggcgcaagcgatccgccaggaccgcccgcatctcgcgcgtgtcgtagatcttcgtcgtccccgtccccttgaacggcgcgtacgcgaacgccgacgccgggacctccgagaacaccaccttgtacgtcctgttctcgtcgaacggctcccccttgatccaccagcccccgttcccatcgggatcgatgttggctcggagctgatgggcccccgtccccgcggccccatcgcccacctggagcaaggtgcgcagcatcggcccgggcatgttgaggaagctcaaccggcccccgatcggaaagatccgcaccacgtcgaagtaggtgatgtcgccttccgggatgatcccgtcgatgcgcaccaggcccgaaggcaagatcgccacgtcggcctggggcacctcggcgaggaacgtctcgatgatcagcttcgtcaggttggtcacccggctccgcacgtcggcctcgtagccgatgagcggctcgggcgcgtaccccaccacctcgtccgggtcgtacccctgcgcgcggagcgtatcgagcgtgatgttcacccaccgatcgaccgccgctgccgtctccggctcgtctgcgaagctcgcgtcgatgtgcaccagccgcgagaacagcttggtcacgcgcgtctgcgtatcgaaccggaagtggtggacgaacgcgctgcgggcgttcgagtcggccttgtagatcggggtcgcatcggcccccacgatggccttcgcggcctcgtgctcgtggcccccgaggagcacgtcgaggcgcggcacctcgatcccgagctgcttgtcgtgatcgagggtcaggtgggtcagcgccaggaacacgtccgcctggttcgcgagcgcgttcaccttcgcgcgcgccgtctcgatggggtcctggtactggacccacggcttcttcaccatgtcgatgcacaccccgagcagggccacccgcaccgcttccccgctcgcgttcgtgaacttcaccacgtcgtgctcgtggacgttcgcgtacggctgccccgctgcattcttgacgttggagaccacccacctgaaccggctctcctcgacccgaagcaggaagtcgtcctcggtcagatcgaactcgtggttccccaccgccgcatgggtgagccccgcggcgttcagcgcctcgatcatgtgctgcccggcgtcgccggtcgtcgccgagatgaccgaaggcgccagaaagtccccgaccatcaccatcagcaggttggggttctccgcttcgagctgcttgcgcagcgtcgccacacgcgcgaggccgccgtagcgacccccctccaccggcgccgcctcgtagacgtcattgagctggatcaccgtgaaatcgacgacgtgatccacgcctgcgccgcggacctcttcctccgaatcgacgacgagaagcgtgatggcatccgctggtgctgcttgctgcgtcatggtcgctcgcctcctctcggtcgggtgagcgttctcacccagacgctacacgaacccccgaaccccctggtctggggtgacccagagtacagacgtactggatgccaccccacaggaattgccgtgacgcgatgccgtgatcacgacgctcgagacgccaggaggtgcggtggcctggtgagcggcgttttgattttcttcgtacgccaggaaacggtcgactaccctcccgccgcgcgggcgccatggcgaggaggaccctcgccggaccggggtgcccggggagtgcgcgggtggaaacggcgacatcggcgagcgcgggcagctgggtcaaggtgcgggacatcgagcgcctgcccgccaaggagacacgccacttcgtccggtggttcgagcgcaaggagccggtgatcttgaccggcctcgacctcgatctcgccgcgtggacgccggagagcatcgtctcgcgctggggggagaaccgcgtccggatctgcaaccacgagggcgcctccgaccacgacccgatgggctggcttcacgaggtctccatcgccgagtacttcggccgccacttcaccgccggtcaggcgatgcggatcatgggcgcctcgctcgcgcagctcgaaggccgggacgacatctgccagcggctcggcctcgacgccatccgccccccgtcgctcgagcagtcccgcagcctgttcttcgccagcgcctcggggggcgtggtcccgctccacttcgacgtcgacttcgcgcacatcttcctcgtccaggcccacggcgcccgcgagatccgcctcttcgccccggcccagtcgcgcaacctctacaagtacccgatgcgaccccaggcctccgtcgccctggatcagccggacttcgagcagtttcctcgcctgcaacggctggaaggccaccagtgccgcctcgtcgccggcgaggtcctctacatgcccgcccggtactggcacctcgtggagtacaccgagccgtcgtgcgggatggccatccgcttccgcaaggccggcttcgaagggcgaaccctcgcctcctacggcaagaacgtggcggcgctggacctgtggctgcggagtcgcagctggggcggcgcctggagcaacctcatgaaagggatggcgcgcctctaggcggccggagccatggccagagaccacctctaccaccgcgagttcttcgaggccctccgcgagcaccccctgggcgagcgcgggtgggtgcagcacctcaagaacatccacgacgccgccgacgccgccgacgccgcaccgtcacgcttcgtccgctacctcgatcgcgaacgccgctgccacccttccgacgtctggtcggtcaccctcaccggcacgtaccgcgccgggcaccactacaagggcatcttcaactgcaagacgccgttcgacctccacctctactcgctgctcctctgggagctgaagccgaggacgatcatcgagctcggctcgttccacggcggcagcgccctctggttcgccgaccagctctcgctcctccaccacggcggggtcgtccactccttcgagcgcttcgccgagctggtcagcccccgcgccgagcacccgtccctcacgttccatcgcgccgatctcaacgatctcacgtccctcgacgcgagcctcttcgagcgcctcccgcacccgtggctcgtcgtcgacgacgcccacgccaacgtctgcaatgtcctccgctacctcgacggtttcgcgaaggagggcgactactacgtcatcgaggacatcacctcggacttcaagagcgagcggtacgaggagatcggccagacggtggacgctttgaactacctcgtcgacaccagctacaccgacaacttcggctacaacctgacctgcgcgcccaacggctggctgcgcaagatgggctgatcccagcggctcaggcgtgcggaccgctcggctccggaggaagcggcgccttctgggccccatcggtcgcgcgcagctcgttccggtgcttcagcagcgggtaggcgccgacgccgaggcttgccaggagcccgatgggggcgaacaggatcgcctggtagagcccccagtgcaggaggaagaccccggcgatgttgatcacgccgggcacgacccccaccacgaaccccgccttcaagaccttgtccatctcctcggccagctcgaagagcttcgtcagcttctccaggctctgatccatcaacaccacctgcgccgtgtcggtcgccaccgtcgtggcaccgcgcaaggagaccgacacgttcgccttcttcagcgcgatggagtcgttgatcccatcgccgacgaagcacaccgcgcgcccttccgcctggagctgctccacgaggtccgccttgccctccggcagcacgttggcaaagtagcgatcgagcccgagctgctcggccagccggcgcgtcggctcctcctgatcgccggagatgatcgacacctggaggccgcgcgcgtgcaaggcccggatcaccgacgcggcctcgggccggatcgtcggctggagctcgatcgtgcccgcgagctgcccgtccacggccaccagaaccatcgagtgaccgtgctggtgcgacgcttcctgacgcgcctggacctcggggggcacctcgatgccctccaggcccatgaagcggtcgctgcccacccgcacgagcttctccccgatcgtgaccttgatgccgtagcccagctcgtagtgggcgtcctcgatctgcggcagagagagcccgcgcgcggcggcttcggccacgatcgcgcgcgcgatggggtggctctgccggtgctccgcggctgccgccagggtgagcagctcgttctcgccgagcccgttcagaccgcggatcgcggcgacgctcggctcgccagtagtgagcgtccccgtcttgtcgaacacgaccgtgtccacgtcgtggagcagctccagcgagcgcccgtccttcaccaggatcgcgttgcgggacgcgatgttgagcaggttcagcatcgcgatcggcgccgtgatgcgcacgttgacgccgaacgacgagttcagcaccgccagcgcgctctccccgccgaacaccgcccaggcgaggccccccagggccagcgtcggcggcgcgcacgcatgcgccagcatcgtccccttggactggagggaggcctggtagctggccgtccggttcagcacctcgccgatgttggcggccaccgtgtcccggcccgccttgtccacgcgcacgtggaccttgcccgacagcaccaccgtcgaggcgtacaccagcgagcccacggtcttctcgatcggctgcgcctcgccggtcagcatctgctgatcgatcgacgccacgccttcgagcacctcgccgtccaccggcatgaactgtccagcgccgacgacgatcacgtccccgggcaggatctggtcgaaggggacctcgatctcgtcgtcgtccaccagtagccacaccgagagcggctgcttggagaagacctggatcagccccttgtgcgagcgatcctgggtgatcaccaggagcttctcgcccaggtaatagagcagcgccgagagcgtcgccggcgcatagaacccgccgagccagatgccggtcacgttgaccgcgctgaggacgtggtagttgaccttccgctccttcaacgcgcggacggcgatcccgtagatcgggaacatgaggctgaaggcgaggggaatggtgacgaccagggacggggggaagaccgtggtccccacgatcaccgcgccgagggtcgccgtggagaacgcgatgcgccggttcagccagcgctcgcgggggctgatggtgaccccctccgaggccatctcgtcgagctgctcgctgcgcgagcgcccgaagagggggtcgaagcggtcgcgcatgaaccgctggtagcgctcgtcgatctcggatgccttctggtgcaaggtctcccggacctcgtccaccgtctgcccggtggcctcgacggtgcggtcgagcacgggggtcacgtgctgctggtggaggaacaccaggtggtcggcaaacccgtcgagctgctcgatcaccgttgtcttgccgttcaccggcgcggcgctcctgccattcacgggcgcttcggcttcggcgacggcgacgctccccgccgccaccgcgccctttcggagcggcttcaagcgcgtgtcgctgaggaccaccacctggtcggcgagctggtccagctcgtcgaccgcggcgcgacctgcgtcgatcaggaaacggaacgagatcatcgtcaaatcccaggcttggaccggtcgccatccgtacagcgcgccgccagcgcagacctgccccccgaaggcgtcttcttcacccgaacgctcggcaaaacccggtggagcgtgggtggctactcatcgggaggaaggctagcagcgggcgcgcgacactgtccagtcacagggccccagcgtcgaggtcgagccgtcgagggcgtgcttcctcgagcacgtcgatgtgctcggggaagtgcgccttcgtgctgggggaagcacgtccacgtgctgggggaagcacgccttcgtgctcggggaagcacgtccacgtgctcggggaagcacgccttcgtgctgggggaagcacgtccacgtgctgggggaagcacgccttcgtgctgggggaagcacgccttcgtgctcggggaagcacgtccacgtgctgggggaagcacgccttcgtgctcggggaagcacgtccacgtgctgggggaagcacgtccacgtgctggggaagcacgtccacgtgctgggggaagcacgacctcgtgctgggggaagcacgacctcgtgtttggggaagcacgccttcgtgctgggggaagcacgacctctgctgggggaagc</qwer>
    </source>
  </sequence123>

It would be really helpful if some gives an idea how to read this.

thanks a lot

Recommended Answers

All 6 Replies

What do lines 51/52 really look like?
".. results nothing as an output" Nothing as in "", or null, or absolutely nothing happens (in which case is the CPU busy or idle)?

Sorry,

Corrected the code.

The output is some thing like

qwer :

This is the only part where I'm getting nothing, as rest of the result of the parser is as I'm expected.

If I change the length to 2000, it shows the characters upto 2000. If I change length to 12000, then again there is no result.


I think it has to do something with the datatype (may be)

Does it continue after the quer : or is that the end of the output? Is it possible that it's just running in Order(n^2) or worse time, and it will work eventually?

Arrays and String etc in Java are limited by the VM memory size - but if you were running out of memory you should get an Exception.

That is the end of the output. I don't see any exceptions and also the result as well.

Surprisingly, the parser is going to the next element in no time.

To be honest, I'm no expert on SAX, but I#m having a quiet afternoon, and nobody else is answering, so...

I found a number of notes like this one re SAX:

The characters method can be called multiple times for a single tag, and you have to collect the characters across the multiple calls rather than expecting them all to arrive at once.

You code seems to assume a single callback, because it resets the bgenomeSequence flag on the first callback. I think you should only reset bgenomeSequence when you get the corresponding endElement call, and allow for multiple characters callbacks inbetween.

To be honest, I'm no expert on SAX, but I#m having a quiet afternoon, and nobody else is answering, so...

I found a number of notes like this one re SAX:


You code seems to assume a single callback, because it resets the bgenomeSequence flag on the first callback. I think you should only reset bgenomeSequence when you get the corresponding endElement call, and allow for multiple characters callbacks inbetween.

thanks, will try it. Just in case if somebody want to have a detailed look how the xml file appears, here it is

http://www.4shared.com/folder/8jRp_m3n/_online.html

Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.