totally new raster function