solves a different problem