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

# This is a dummy file to satisfy the ANGLE build. Flutter's use of ANGLE
# doesn't actually require any of the real content.
