hard problems