finish strategy pattern