understand array_end