#559 optimized