Snuke has N strings. The i-th string is s_i.

Let us concatenate these strings into one string after arranging them in some order. Find the maximum possible number of occurrences of `AB` in the resulting string.

Constraints

* 1 \leq N \leq 10^{4}
* 2 \leq |s_i| \leq 10
* s_i consists of uppercase English letters.

Input

Input is given from Standard Input in the following format:


N
s_1
\vdots
s_N


Output

Print the answer.

Examples

Input

3
ABCA
XBAZ
BAD


Output

2


Input

9
BEWPVCRWH
ZZNQYIJX
BAVREA
PA
HJMYITEOX
BCJHMRMNK
BP
QVFABZ
PRGKSPUNA


Output

4


Input

7
RABYBBE
JOZ
BMHQUVA
BPA
ISU
MCMABAOBHZ
SZMEHMA


Output

4
import java.util.Scanner;

public class Main {

	public static void main(String[] args) {
		try (Scanner in = new Scanner(System.in)) {
			int n = in.nextInt();
			int r = 0;
			int trail = 0;
			int lead = 0;
			int dbl = 0;
			for (int i = 0; i < n; i++) {
				String s = in.next();
				int p = -1;
				while (true) {
					p = s.indexOf("AB", p + 1);
					if (p == -1) {
						break;
					}
					r++;
				}
				boolean st = s.startsWith("B");
				boolean ed = s.endsWith("A");
				if (st && ed) {
					dbl++;
				} else {
					if (st) {
						lead++;
					}
					if (ed) {
						trail++;
					}
				}
			}
			
			//System.out.println("r" + r + " d" + dbl + " l" + lead + " t" + trail);
			
			// double 同士を1つに連結。
			if (dbl > 1) {
				r += dbl - 1;
				dbl = 1;
			}
			if (dbl == 1) {
				if (lead > 0) {
					lead--;
					r++;
				}
				if (trail > 0) {
					trail--;
					r++;
				}
			}
			r += Math.min(lead, trail);
			
			System.out.println(r);
		}
	}
	
}
