Add arbitrary size convolution