general 2d CA