問題文
$1$ から $1000$ までの整数が書かれたカードがたくさんある.アンナとブルーノはそれらのカードを用いて次のようなゲームをする.
アンナは $A$ 枚のカードからなる山を,ブルーノは $B$ 枚のカードからなる山を持っている.アンナは $A$ 枚のカードの中から任意の枚数($0$ 枚でもよい)のカードを捨てて新しい山を作る.ブルーノは $B$ 枚のカードからなる山の一番上から何枚か($0$ 枚でもよい)と,一番下から何枚か($0$ 枚でもよい)のカードを捨てて新しい山を作る.ただし,捨てる際に残ったカードの並び替えは行わない.こうして作った $2$ つの山が一致していた場合,一方の山に含まれるカードの枚数が $2$ 人の得点になる.ただし,$2$ つの山が一致しているとは,山に含まれるカードの枚数 $n$ が同じで,かつ上から $i$ 番目($1 \le i \le n$)に書かれたカードの整数がすべて同じであることである.
例えば,アンナが $5$ 枚のカードからなる山を持っており,書かれている整数が上から順に $1, 2, 3, 4, 5$ であり,ブルーノが $4$ 枚のカードからなる山を持っており,書かれている整数が上から順に $3, 1, 4, 1$ であったとする.このとき,アンナが $2, 3, 5$ のカードを捨て,ブルーノが一番上の $3$ と一番下の $1$ のカードを捨てると $2$ 人の山が一致する.このとき,残った一方の山に含まれるカードの枚数は $2$ 枚なので,$2$ 人は得点 $2$ を得る.

$2$ 人の得点の最大値を求めたい.
課題
アンナとブルーノが持っているカードの山の情報が与えられたとき,$2$ 人の得点の最大値を求めるプログラムを作成せよ.
制限
- $1 \le A \le 5000$:アンナの山のカードの枚数.
- $1 \le B \le 5000$:ブルーノの山のカードの枚数.
- カードに書かれている整数は $1$ 以上 $1000$ 以下である.
入力
標準入力から以下のデータを読み込め.
- $1$ 行目には,整数 $A, B$ が空白を区切りとして書かれている.
- $2$ 行目には,$A$ 個の整数が空白を区切りとして書かれており,$i$ 番目の整数($1 \le i \le A$)はアンナの山の上から $i$ 番目のカードに書かれている整数を表す.
- $3$ 行目には,$B$ 個の整数が空白を区切りとして書かれており,$j$ 番目の整数($1 \le j \le B$)はブルーノの山の上から $j$ 番目のカードに書かれている整数を表す.
出力
標準出力に,$2$ 人の得点の最大値を表す整数を $1$ 行で出力せよ.
採点基準
- 採点用データのうち,配点の $10\%$ 分については,$A \le 10, B \le 10$ を満たす.
- 採点用データのうち,配点の $50\%$ 分については,$A \le 100, B \le 100$ を満たす.
入出力例 1
入力
5 4 1 2 3 4 5 3 1 4 1
出力
2
この例は問題文中の例に対応している.
入出力例 2
入力
6 5 4 1 5 2 3 4 4 5 4 2 3
出力
3
この例では,$2$ 人が得点 $3$ を得る方法が $2$ 通りある.
- アンナが $1, 2, 3$ のカードを捨て,ブルーノが $2, 3$ のカードを捨てた場合,$2$ 人の山は上から順に $4, 5, 4$ となり,$2$ 人の得点は $3$ 点となる.
- また,アンナが $1, 5, 4$ のカードを捨て,ブルーノが一番上の $4$ と $5$ のカードを捨てた場合,$2$ 人の山は上から順に $4, 2, 3$ となり,$2$ 人の得点は $3$ 点となる.