class mathStruc<A> { mathStruc(A a) { } A model(){ A a; return a; } methode(){ var innerOp = o -> ms -> new mathStruc<A>(o.apply(this.model(),ms.model())); return innerOp; } }