docs: function ecp_mul(R, n1, N2, a, p, l) {
  	var add = mpn_one_p(N2[2], l) ? ecp_add_aff : ecp_add;
  	var active = false, swaps = 0, S = _ecp_S, T;
  	for (var i = l; i > 0;) {
  		var w = n1[--i];
  		for (var j = 31; j > 0; --j) {
  			if (active) {
  				ecp_dbl(S, R, a, p, l);
  				T = S, S = R, R = T, ++swaps;
  			}
  			if ((w <<= 1) < 0) {
  				if (active) {
  					add(S, R, N2, a, p, l);
  					T = S, S = R, R = T, ++swaps;
  				}
  				else {
  					ecp_copy(R, N2, l);
  					active = true;
  				}
  			}
  		}
  	}
  	if (swaps & 1) {
  		return ecp_copy(S, R, l);
  	}
  	return R;
  }