code: public void setAffected(byte subrange, boolean v) throws IllegalArgumentException {
          if (this.status == null) {
              throw new IllegalArgumentException("Can not set affected if no status present!");
          }
          // ceck
          if (this.status.length < (subrange / 8)) {
              throw new IllegalArgumentException("Argument exceeds status!");
          }
          int index_l = (subrange / 8);
          int index = subrange % 8; // number of bit to lit... ech
          int n2Pattern = (int) Math.pow(2, index); // hmm no int pows... sucks
  
          if (v) {
              this.status[index_l] |= n2Pattern;
          } else {
              // not, we have to inverse pattern...
              n2Pattern = 0xFF ^ n2Pattern; // this will create bits with zeros in place of n2Pattern ones!
              this.status[index_l] &= n2Pattern; // do logical and, this will kill proper bit and leave rest unchanged
          }
      }
docs: /*
  (non-Javadoc)
  
  @see org.restcomm.protocols.ss7.isup.message.parameter.RangeAndStatus#setAffected (byte, boolean)