minor: I'd rename the `counter` variables to `processor` in this file. Scrub it from the code!