debugging challenges