            w = 0;
            }
        }
        if (j > 0) {
            self.dMultiply(Math.pow(b, j));
            self.dAddOffset(w, 0);
        }
        if (mi) BigInteger.ZERO.subTo(self, self);
    }

// (protected) alternate constructor
    function bnpFromNumber(a, b, c) {
        var self = this;
        if ("number" == typeof b) {
            // new BigInteger(int,int,RNG)
            if (a < 2) self.fromInt(1);
            else {
                self.fromNumber(a, c);
                if (!sel