Convolution related query

I got my answer but here one more thing I feel difficult to digest in the example given for convolution,


input = [1,0,2,3,0,1,1] and kernel = [3,1,3], convolution was applied quite simply meaning you start from input[0]*kernel[0] + input[1]*kernel[1] + input[2]*kernel[2] which gives the output[0] and you slide the kernel one by one and obtain the respective output indices but in the predict_step function there is one width variable which determines from where the kernel starts like it starts from kernel[0]*input[10]+kernel[1]*input[9] = output[0] and then kernel[0]*input[0]+kernel[1]*input[10] = output[1] and so on, and it feels quite confusing like you cannot I cannot intutively guess from where the multiplication is starting and I need to mug up that part of width…
Can you explain this in some intutive way? @albertoezquerro