#546 optimized speed