loop+recur is faster than recursive