code: @Override
  	protected int next(int nbits) {
  		long x = this.seed;
  		x ^= (x << 21);
  		x ^= (x >>> 35);
  		x ^= (x << 4);
  		this.seed = x;
  		x &= ((1L << nbits) - 1);
  		return (int) x;
  	}
docs: Implementation of George Marsaglia's elegant Xorshift random generator
  30% faster and better quality than the built-in {@link Random}