question: public synchronized void decrement ( int weight ) { if ( weight == 0 ) return ; minimum += weight ; int logfloor = ( int ) ( Math . floor ( Math . log ( weight ) / Math . log ( 2 ) ) ) ; if ( logfloor < votingRecord . size ( ) - 1 ) { while ( logfloor > 0 ) { selectedDecrement ( logfloor ) ; weight = weight - ( int ) Math . pow ( 2 , logfloor ) ; logfloor = ( int ) ( Math . floor ( Math . log ( weight ) / Math . log ( 2 ) ) ) ; } } for ( int x = 0 ; x < weight ; x ++ ) { decrement ( ) ; } }
target:  Decrement every dimension by the number passed as a parameter. Again at least one count in each dimension i.e: no underflow check currently - will wreak havoc with zero counts