code: func (m *Memory) Set(offset, size uint64, value []byte) {
  	// It's possible the offset is greater than 0 and size equals 0. This is because
  	// the calcMemSize (common.go) could potentially return 0 when size is zero (NO-OP)
  	if size > 0 {
  		// length of store may never be less than offset + size.
  		// The store should be resized PRIOR to setting the memory
  		if offset+size > uint64(len(m.store)) {
  			panic("invalid memory: store empty")
  		}
  		copy(m.store[offset:offset+size], value)
  	}
  }
docs: // Set sets offset + size to value