Custom Layer implementation

Hi All
I want to define a custom layer ,quite similar to MaxPool2D.
The custom layer returns the left up corner value from 2x2 tile instead of the maximum value as returns by MaxPool2D.
I thought to use Conv2D layer , with predefine kernel ( which is 2x2 matrix with 1 in the top left corner and the others are zeros) , stride of 2 without backprop.

any other suggestion?