code: func (s *Subnet) Prefix() int {
  	for i, b := range []byte(s.mask) {
  		for j := 7; j >= 0; j-- {
  			if b&(1<<uint(j)) == 0 {
  				return i*8 + 7 - j
  			}
  		}
  	}
  	return len(s.mask) * 8
  }
docs: // Prefix returns the number of bits before the first host bit.