draft 1 ArrayMath