import java.io.*;
import java.util.*;
import java.text.*;
import java.math.*;
import java.util.regex.*;
class A {
static int CeilIndex(int A[], int l, int r, int key)
{
int m;
while( r - l > 1 ) {
m = l + (r - l)/2;
if(A[m] <= key )
r = m;
else
l = m;
}
return r;
}
static int LongestIncreasingSubsequenceLength(int A[], int size) {
int[] tailTable = new int[size];
int len;
for(int i=0;i