Назначьте подкласс универсального класса суперклассу этого класса

У меня есть пара предоставленных интерфейсов

public interface Finder<S extends Stack<T>,T extends Item> {
    public S find(S s, int a);
}

public interface Stack<T extends Item> {
    Stack<T> getCopy();
}

и класс, который реализует первый:

public class SimpleFinder<S extends Stack<T>,T extends Item> implements Finder<S,T>{

    public S find(S s, int a){
         S stack = ....;
         ...
         stack = s.getCopy(); \\Error: incompatible types
                              \\       required: S
                              \\       found:    Stack<T>
        .....
        return stack;
    }


}

Если я не могу изменить какой-либо интерфейс, каков будет наилучший курс действий при сохранении реализации как можно более общей?

РЕДАКТИРОВАТЬ Какой-то другой код, который я не могу сломатьSimpleFinder<ClassA,ClassB> поэтому у меня должно быть два общих типа в реализации.

Ответы на вопрос(5)

Ваш ответ на вопрос