// Copyright (c) 2013, the Dart project authors.  Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.

library test.other_library;

topLevelMethod() => 42;
get topLevelGetter => 42;
set topLevelSetter(x) => 42;
var topLevelField = 42;

_topLevelMethod() => 42;
get _topLevelGetter => 42;
set _topLevelSetter(x) => 42;
var _topLevelField = 42;
