// Copyright (c) 2021, 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.

// @dart = 2.10

@pragma('dart2js:noInline')
/*member: step12a:member_unit=1{step1, step2a, step2b, step3}*/
step12a() => '12a';

@pragma('dart2js:noInline')
/*member: step12a3:member_unit=1{step1, step2a, step2b, step3}*/
step12a3() => '12a3';

@pragma('dart2js:noInline')
/*member: step2a3:member_unit=2{step2a, step2b, step3}*/
step2a3() => '2a3';

@pragma('dart2js:noInline')
/*member: step12b:member_unit=1{step1, step2a, step2b, step3}*/
step12b() => '12b';

@pragma('dart2js:noInline')
/*member: step12b3:member_unit=1{step1, step2a, step2b, step3}*/
step12b3() => '12b3';

@pragma('dart2js:noInline')
/*member: step2b3:member_unit=2{step2a, step2b, step3}*/
step2b3() => '2b3';

@pragma('dart2js:noInline')
/*member: step2ab:member_unit=2{step2a, step2b, step3}*/
step2ab() => '2ab';

@pragma('dart2js:noInline')
/*member: step2ab3:member_unit=2{step2a, step2b, step3}*/
step2ab3() => '2ab3';

@pragma('dart2js:noInline')
/*member: step13:member_unit=1{step1, step2a, step2b, step3}*/
step13() => '13';

@pragma('dart2js:noInline')
/*member: step12ab:member_unit=1{step1, step2a, step2b, step3}*/
step12ab() => '12ab';

@pragma('dart2js:noInline')
/*member: step12ab3:member_unit=1{step1, step2a, step2b, step3}*/
step12ab3() => '12ab3';
