reduce protocol callsite overhead, see  https://github.com/clojure/clojure/commit/0b73494c3c855e54b1da591eeb687f24f608f346