code: func writeOutPoint(w io.Writer, pver uint32, version int32, op *OutPoint) error {
  	_, err := w.Write(op.Hash[:])
  	if err != nil {
  		return err
  	}
  
  	return binarySerializer.PutUint32(w, littleEndian, op.Index)
  }
docs: // writeOutPoint encodes op to the bitcoin protocol encoding for an OutPoint
  // to w.