public static ArrayList<Match> parseComp() throws IOException{
		
		//String to store current line
		String current;
		
		//Add relevant lines to the list which is used to create match objects
		ArrayList<String> matches = new ArrayList<String>();
		
		//Completed match objects
		ArrayList<Match> parsedmatches = new ArrayList<Match>();
			
		//While we still have content to read
		while(scan.hasNext()){
			
			//Look at the next line
			current = scan.nextLine();
			
			//If the line contains a certain relevant string add it to the list
			if(current.contains("Score = ") || current.contains("Expect")){
				matches.add(current);			
				
				//If we are looking at a line containing "Score"
				//A new match has been reached - reset booleans to get base locations
				getQuery = false;
				getSubject = false;
				//Set index to store gaps in
				newmatch++;
				//Initialise this position
				matchQGaps.add(0);
				matchSGaps.add(0);
				//Reset gaps for this match
				qgaps = 0;
				sgaps = 0;
			}				
				
			if(current.contains("Gaps") || current.contains("Identities"))			
				matches.add(current);			
			
			if(current.contains("Strand"))				
				matches.add(current);		
			
			//Get inital base location of query
			if(current.contains("Query") && current.contains("Query=") == false && getQuery == false){
				matches.add(current);				
				//Set boolean to true, only want first reading
				getQuery = true;				
			}
			
			//Get initial base location of subject
			if(current.contains("Sbjct ") && getSubject == false){
				matches.add(current);				
				//Set boolean to true, only want first reading
				getSubject = true;
							
			}
			
			if(current.contains("Query ") && current.contains("-")){
				
				for(int i=0; i<current.length(); i++){
					
					//System.out.println(current.charAt(i));
					
					if(current.charAt(i) == '-'){
						System.out.println("GAP!");						
						qgaps++;
						matchQGaps.set(newmatch, qgaps);
					}				
					
				}				
			}
			
			
			if(current.contains("Sbjct") && current.contains("-")){
				
				for(int i=0; i<current.length(); i++){
					
					//System.out.println(current.charAt(i));
					
					if(current.charAt(i) == '-'){
						System.out.println("GAP!");
						sgaps++;
						System.out.println("ADDING GAP: " + sgaps);
						matchSGaps.set(newmatch, sgaps);
					}				
					
				}				
			}
			

			
			
			
		}
			
		//We now need create a match using the strings extracted from the file
		parsedmatches = createMatch(matches);			
		
		//Return the complete objects
		return parsedmatches;				
	}