// Copyright 2018 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.

// --- "Common elements" first.
// <include src="discover_module_behavior.js">
// <include src="discover_card.js">

// --- Modules.
// <include src="modules/discover_module_redeem_offers.js">
// <include src="modules/discover_module_launch_help_app.js">
// <include src="modules/discover_module_sync_files.js">
// <include src="modules/discover_module_pin_setup.js">

// --- These depend on modules.
// <include src="discover_welcome.js">
// <include src="discover_ui.js">
