code: public final SipHasherStream update(byte b) {
          this.len++;
          this.m |= (((long) b & 0xff) << (this.m_idx++ * 8));
          if (this.m_idx < 8) {
              return this;
          }
          this.v3 ^= this.m;
          for (int i = 0; i < this.c; i++) {
              round();
          }
          this.v0 ^= this.m;
          this.m_idx = 0;
          this.m = 0;
          return this;
      }
docs: Updates the hash with a single byte.
  
  This will only modify the internal `m` value, nothing will be modified
  in the actual `v*` states until an 8-byte block has been provided.
  
  @param b
  the byte being added to the digest.
  @return
  the same {@link SipHasherStream} for chaining.