Correectly interpret empty signal -- intro previous to get around the issue of the accumulator being set before the function invocation (todo -- just move invocation maybe?)
This means that drop when trivially follows