add tick logic and Array2D template