import 'dart:async';

main() {}
methodCompound() {}
methodConditional<T>(bool b, T value) {}
methodDirect<T>(T value) {}
var fieldCompound = () {
  int local3;
  late int;
  local4;
  local3 += 0;
  local4 += 0;
};
var fieldConditional = <T>(bool b, T value) {
  T local1;
  late T;
  local2;
  int local3;
  late int;
  local4;
  FutureOr<int> local5;
  late FutureOr;
  <int>[];
  local6;
  late T;
  local7 = value;
  if (b) {
    local1 = value;
    local2 = value;
    local3 = 0;
    local4 = 0;
    local5 = 0;
    local6 = 0;
    local7;
  }
  local1;
  local2;
  local3;
  local4;
  local5;
  local6;
  local7;
};
var fieldDirect = <T>(T value) {
  T local1;
  late T;
  local2;
  int local3;
  late int;
  local4;
  FutureOr<int> local5;
  late FutureOr;
  <int>[];
  local6;
  late T;
  local7 = value;
  local1;
  local2;
  local3;
  local4;
  local5;
  local6;
  local7;
};
