improved versions