handlers logic changed