added missing algorithm include