ADArray<T> implemented