array constructor