mresiduate([],write(abc))?
A=[S|B],B=[],mresiduate(A,write(cde))?
S=34?

B=[]?
.
A=[S|B],mresiduate(A,write(cde))?
mresiduate({A;B;C},write(fgh))?
mresiduate([A|B:[]],write(ijk))?
A=int?

.
D=[],C=[Z|D],B=[Y|C],A=[X|B],mresiduate(A,write(A))?
X=3?

Y=4?

Z=5?

X=int?
Y=int?
.
mresiduate([X:int,Y:int],write(qwe))?
X=@?
Y=@?
.
A=[A],mresiduate(A,write(qwe))?
A=@?

.
mresiduate([A,A,A,A,A,B],write(qwe))?
A=23?

.
