code: func (kvm *Clone) Restore(rd io.Reader) error {
  	kvm.mu.Lock()
  	defer kvm.mu.Unlock()
  	data, err := ioutil.ReadAll(rd)
  	if err != nil {
  		return err
  	}
  	var keys map[string][]byte
  	if err := json.Unmarshal(data, &keys); err != nil {
  		return err
  	}
  	kvm.keys = keys
  	return nil
  }
docs: // Restore restores a snapshot