private static int[] negateNegativeBinary(int[] binary){
        int nBin = binary.length;
        int[] negate = new int[nBin];
        int[] minusOne = new int[nBin];
        for(int i=0; i<nBin; i++){
            minusOne[i]=1;
            negate[i]=0;
        }
        // subtract one
        negate = DtoA.addBinary(negate, minusOne);
        // invert all bits
        for(int i=0; i<nBin; i++){
             if(binary[i] == 0)negate[i] = 1;
        }

        return negate;
    }