IPointerDownHandler / IPointerUpHandler Interface reports clicking on a single object

My game has a 9 x 9 x 9 array of cubes:

As seen in the image, the user can only interact with 81 cubes at time (a 9 x 9 “slice” of the full array.) Now the user needs to be able to click on a single cube at a time, and the script needs to modify the selected cube in various ways. My problem is that when I click on the various cubes, the “this” pointer tends to point at one cube in the entire array (The cubes are all identified by layer, row, and column where they have been placed when they are instantiated.) The cube that prominently gets selected is at layer = 0, row = 0 and column = 0. "Prominently because it’s usual that cube(0,0,0) is selected, regardless of which cube is clicked on, but sometimes another cube is selected, but much more rarely is this the case.

I have tried placing my EventSystem both in the main Scene:
image

and in the cube prefab:

image

I will actively watch for responses, and try to quickly reply to any questions (I know this is vague.)