code: func GetWriter(dest io.Writer, state ws.State, op ws.OpCode, n int) *Writer {
  	x, m := writers.Get(n)
  	if x != nil {
  		w := x.(*Writer)
  		w.Reset(dest, state, op)
  		return w
  	}
  	// NOTE: we use m instead of n, because m is an attempt to reuse w of such
  	// size in the future.
  	return NewWriterBufferSize(dest, state, op, m)
  }
docs: // GetWriter tries to reuse Writer getting it from the pool.
  //
  // This function is intended for memory consumption optimizations, because
  // NewWriter*() functions make allocations for inner buffer.
  //
  // Note the it ceils n to the power of two.
  //
  // If you have your own bytes buffer pool you could use NewWriterBuffer to use
  // pooled bytes in writer.