why this logic?