remove excess lists:reverse
optimize hash population