code: func (p *PUBLISH) setFixedHeader() {
  	// Define the first byte of the fixed header.
  	b := TypePUBLISH << 4
  
  	// Set 1 to the Bit 3 if the DUP flag is true.
  	if p.DUP {
  		b |= 0x08
  	}
  
  	// Set the value of the Will QoS to the Bit 2 and 1.
  	b |= p.QoS << 1
  
  	// Set 1 to the Bit 0 if the Retain is true.
  	if p.retain {
  		b |= 0x01
  	}
  
  	// Append the first byte to the fixed header.
  	p.fixedHeader = append(p.fixedHeader, b)
  
  	// Append the Remaining Length to the fixed header.
  	p.appendRemainingLength()
  }
docs: // setFixedHeader sets the fixed header to the Packet.