implements S(-1)rs,i

3 more to go - but they are pretty complicated. Let us see