// Copyright 2016 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

// <include src="../file_manager/common/js/file_type.js">
// <include src="../file_manager/common/js/metrics_base.js">
// <include src="../file_manager/common/js/metrics.js">
// <include src="../file_manager/common/js/metrics_events.js">
// <include src="../file_manager/foreground/js/metadata/image_orientation.js">
// <include src="cache.js">
// <include src="image_loader.js">
// <include src="image_loader_util.js">
// <include src="piex_loader.js">
// <include src="request.js">
// <include src="scheduler.js">
// Entry point.
// <include src="background.js">
