code: private static final int mula_small(byte[] p,byte[] q,int m,byte[] x,int n,int z) {
  		int v=0;
  		for (int i=0;i<n;++i) {
  			v+=(q[i+m] & 0xFF)+z*(x[i] & 0xFF);
  			p[i+m]=(byte)v;
  			v>>=8;
  		}
  		return v;		
  	}
docs: /* n+m is the size of p and q