-- suggestedfix_stub_embedded_8_27 --
package stub

import (
	"io"
	"sort"
)

var _ embeddedInterface = (*embeddedConcrete)(nil) //@suggestedfix("(", "quickfix", "")

type embeddedConcrete struct{}

// Len implements embeddedInterface.
func (*embeddedConcrete) Len() int {
	panic("unimplemented")
}

// Less implements embeddedInterface.
func (*embeddedConcrete) Less(i int, j int) bool {
	panic("unimplemented")
}

// Read implements embeddedInterface.
func (*embeddedConcrete) Read(p []byte) (n int, err error) {
	panic("unimplemented")
}

// Swap implements embeddedInterface.
func (*embeddedConcrete) Swap(i int, j int) {
	panic("unimplemented")
}

type embeddedInterface interface {
	sort.Interface
	io.Reader
}

