code: func (d *decompressor) lazyBlock() {
  	if d.blk == nil {
  		if w, ok := d.owner.cache.(Wrapper); ok {
  			d.blk = w.Wrap(&block{owner: d.owner})
  		} else {
  			d.blk = &block{owner: d.owner}
  		}
  		return
  	}
  	if !d.blk.ownedBy(d.owner) {
  		d.blk.setOwner(d.owner)
  	}
  }
docs: // lazyBlock conditionally creates a ready to use Block.