tellsimp: can a pattern match the "rest" of a list?



I tried

matchdeclare([a,b],true);
tellsimp(cons(a,b),foo(a,b));

[1,2,3];

I wanted to get foo(1,[2,3]), but still got [1,2,3].

Is there any way to achieve this?

[It probably isn't critical to my application, but was merely curious.]