static void inplace_liftV(int *dst, int width, int height, int stride, int *coeffs, int n, int shift, int start, int inverse){
static void inplace_liftV(DWTELEM *dst, int width, int height, int stride, int *coeffs, int n, int shift, int start, int inverse){
static void inplace_liftV(int *dst, int width, int height, int stride, int *coeffs, int n, int shift, int start, int inverse){    int x, y, i;    for(y=start; y<height; y+=2){        for(x=0; x<width; x++){            int64_t sum=0;                for(i=0; i<n; i++){                int y2= y + 2*i - n + 1;                if     (y2<      0) y2= -y2;                else if(y2>=height) y2= 2*height-y2-2;                sum += coeffs[i]*(int64_t)dst[x + y2*stride];            }            if(inverse) dst[x + y*stride] -= (sum + (1<<shift)/2)>>shift;            else        dst[x + y*stride] += (sum + (1<<shift)/2)>>shift;        }    }}