added convolution block plus some functionality