update ArrayFactory