code: func NewReset(in io.Reader, ignorePreflightErrors sets.String, forceReset bool, certsDir, criSocketPath string) (*Reset, error) {
  	if !forceReset {
  		fmt.Println("[reset] WARNING: Changes made to this host by 'kubeadm init' or 'kubeadm join' will be reverted.")
  		fmt.Print("[reset] Are you sure you want to proceed? [y/N]: ")
  		s := bufio.NewScanner(in)
  		s.Scan()
  		if err := s.Err(); err != nil {
  			return nil, err
  		}
  		if strings.ToLower(s.Text()) != "y" {
  			return nil, errors.New("Aborted reset operation")
  		}
  	}
  
  	fmt.Println("[preflight] Running pre-flight checks")
  	if err := preflight.RunRootCheckOnly(ignorePreflightErrors); err != nil {
  		return nil, err
  	}
  
  	return &Reset{
  		certsDir:      certsDir,
  		criSocketPath: criSocketPath,
  	}, nil
  }
docs: // NewReset instantiate Reset struct