public String GetNextVal(String c) {
int i=1;
int[] nextval=new int[c.length()];
nextval[0]=0;
int j=0;
while(i<c.length())
{
if(j==0||Character.toString(c.charAt(i-1)).equals(Character.toString(c.charAt(j-1))))
{
++i;
++j;
if(Character.toString(c.charAt(i-1)).equals(Character.toString(c.charAt(j-1))))
nextval[i-1]=nextval[j-1];
else nextval[i-1]=j;
}//if
else
j=nextval[j-1];
}
}