Added implementation of first step using blocks