partial solutions working