refactor finding move to use multimethods for difficulties