type evaluation- works OK

only problem is in case:
int[] arr = (new int[][max])[0];