main = <No Member>;
library from "org-dartlang-test:///lib.dart" as lib {

  import "org-dartlang-test:///lib2.dart";

  @#C7
  class Y extends dart.ffi::Struct {
    static final field dart.core::int* #sizeOf = (#C10).{dart.core::List::[]}(dart.ffi::_abi())/*isLegacy*/;
    synthetic constructor •() → lib::Y
      : super dart.ffi::Struct::•()
      ;
    constructor #fromTypedDataBase(dart.core::Object #typedDataBase) → lib::Y
      : super dart.ffi::Struct::_fromTypedDataBase(#typedDataBase)
      ;
    @#C11
    get y1() → dart.core::int
      return dart.ffi::_loadUint8(this.{dart.ffi::_Compound::_typedDataBase}, (#C13).{dart.core::List::[]}(dart.ffi::_abi()));
    @#C11
    set y1(dart.core::int #externalFieldValue) → void
      return dart.ffi::_storeUint8(this.{dart.ffi::_Compound::_typedDataBase}, (#C13).{dart.core::List::[]}(dart.ffi::_abi()), #externalFieldValue);
    @#C14
    get y3() → dart.core::int
      return dart.ffi::_loadUint64(this.{dart.ffi::_Compound::_typedDataBase}, (#C17).{dart.core::List::[]}(dart.ffi::_abi()));
    @#C14
    set y3(dart.core::int #externalFieldValue) → void
      return dart.ffi::_storeUint64(this.{dart.ffi::_Compound::_typedDataBase}, (#C17).{dart.core::List::[]}(dart.ffi::_abi()), #externalFieldValue);
    @#C11
    get y2() → dart.core::int
      return dart.ffi::_loadUint8(this.{dart.ffi::_Compound::_typedDataBase}, (#C19).{dart.core::List::[]}(dart.ffi::_abi()));
    @#C11
    set y2(dart.core::int #externalFieldValue) → void
      return dart.ffi::_storeUint8(this.{dart.ffi::_Compound::_typedDataBase}, (#C19).{dart.core::List::[]}(dart.ffi::_abi()), #externalFieldValue);
  }
}
library from "org-dartlang-test:///lib2.dart" as lib2 {
additionalExports = (ffi::nullptr,
  ffi::unsized,
  ffi::sizeOf,
  ffi::Dart_NativeMessageHandler,
  ffi::Allocator,
  ffi::AllocatorAlloc,
  ffi::Array,
  ffi::ArrayArray,
  ffi::DartRepresentationOf,
  ffi::Dart_CObject,
  ffi::Double,
  ffi::DoubleArray,
  ffi::DoublePointer,
  ffi::DynamicLibrary,
  ffi::DynamicLibraryExtension,
  ffi::Float,
  ffi::FloatArray,
  ffi::FloatPointer,
  ffi::Handle,
  ffi::Int16,
  ffi::Int16Array,
  ffi::Int16Pointer,
  ffi::Int32,
  ffi::Int32Array,
  ffi::Int32Pointer,
  ffi::Int64,
  ffi::Int64Array,
  ffi::Int64Pointer,
  ffi::Int8,
  ffi::Int8Array,
  ffi::Int8Pointer,
  ffi::IntPtr,
  ffi::IntPtrArray,
  ffi::IntPtrPointer,
  ffi::NativeApi,
  ffi::NativeFunction,
  ffi::NativeFunctionPointer,
  ffi::NativePort,
  ffi::NativeType,
  ffi::Opaque,
  ffi::Packed,
  ffi::Pointer,
  ffi::PointerArray,
  ffi::PointerPointer,
  ffi::Struct,
  ffi::StructArray,
  ffi::StructPointer,
  ffi::Uint16,
  ffi::Uint16Array,
  ffi::Uint16Pointer,
  ffi::Uint32,
  ffi::Uint32Array,
  ffi::Uint32Pointer,
  ffi::Uint64,
  ffi::Uint64Array,
  ffi::Uint64Pointer,
  ffi::Uint8,
  ffi::Uint8Array,
  ffi::Uint8Pointer,
  ffi::Union,
  ffi::UnionArray,
  ffi::UnionPointer,
  ffi::Unsized,
  ffi::Void)

  export "org-dartlang-test:///lib3.dart";

}
library from "org-dartlang-test:///lib3.dart" as lib3 {
additionalExports = (ffi::nullptr,
  ffi::unsized,
  ffi::sizeOf,
  ffi::Dart_NativeMessageHandler,
  ffi::Allocator,
  ffi::AllocatorAlloc,
  ffi::Array,
  ffi::ArrayArray,
  ffi::DartRepresentationOf,
  ffi::Dart_CObject,
  ffi::Double,
  ffi::DoubleArray,
  ffi::DoublePointer,
  ffi::DynamicLibrary,
  ffi::DynamicLibraryExtension,
  ffi::Float,
  ffi::FloatArray,
  ffi::FloatPointer,
  ffi::Handle,
  ffi::Int16,
  ffi::Int16Array,
  ffi::Int16Pointer,
  ffi::Int32,
  ffi::Int32Array,
  ffi::Int32Pointer,
  ffi::Int64,
  ffi::Int64Array,
  ffi::Int64Pointer,
  ffi::Int8,
  ffi::Int8Array,
  ffi::Int8Pointer,
  ffi::IntPtr,
  ffi::IntPtrArray,
  ffi::IntPtrPointer,
  ffi::NativeApi,
  ffi::NativeFunction,
  ffi::NativeFunctionPointer,
  ffi::NativePort,
  ffi::NativeType,
  ffi::Opaque,
  ffi::Packed,
  ffi::Pointer,
  ffi::PointerArray,
  ffi::PointerPointer,
  ffi::Struct,
  ffi::StructArray,
  ffi::StructPointer,
  ffi::Uint16,
  ffi::Uint16Array,
  ffi::Uint16Pointer,
  ffi::Uint32,
  ffi::Uint32Array,
  ffi::Uint32Pointer,
  ffi::Uint64,
  ffi::Uint64Array,
  ffi::Uint64Pointer,
  ffi::Uint8,
  ffi::Uint8Array,
  ffi::Uint8Pointer,
  ffi::Union,
  ffi::UnionArray,
  ffi::UnionPointer,
  ffi::Unsized,
  ffi::Void)

  export "dart:ffi";

}
library from "org-dartlang-test:///main.dart" as main {

  import "dart:ffi";
  import "org-dartlang-test:///lib.dart";

  @#C23
  class X extends dart.ffi::Struct {
    static final field dart.core::int* #sizeOf = (#C26).{dart.core::List::[]}(dart.ffi::_abi())/*isLegacy*/;
    synthetic constructor •() → main::X
      : super dart.ffi::Struct::•()
      ;
    constructor #fromTypedDataBase(dart.core::Object #typedDataBase) → main::X
      : super dart.ffi::Struct::_fromTypedDataBase(#typedDataBase)
      ;
    get x1() → lib::Y
      return new lib::Y::#fromTypedDataBase( block {
        dart.core::Object #typedDataBase = this.{dart.ffi::_Compound::_typedDataBase};
        dart.core::int #offset = (#C13).{dart.core::List::[]}(dart.ffi::_abi());
      } =>#typedDataBase is dart.ffi::Pointer<dynamic> ?{dart.core::Object} dart.ffi::_fromAddress<lib::Y>(#typedDataBase.{dart.ffi::Pointer::address}.{dart.core::num::+}(#offset)) : let dart.typed_data::TypedData #typedData = dart._internal::unsafeCast<dart.typed_data::TypedData>(#typedDataBase) in #typedData.{dart.typed_data::TypedData::buffer}.{dart.typed_data::ByteBuffer::asUint8List}(#typedData.{dart.typed_data::TypedData::offsetInBytes}.{dart.core::num::+}(#offset), (#C10).{dart.core::List::[]}(dart.ffi::_abi())));
    set x1(lib::Y #externalFieldValue) → void
      return dart.ffi::_memCopy(this.{dart.ffi::_Compound::_typedDataBase}, (#C13).{dart.core::List::[]}(dart.ffi::_abi()), #externalFieldValue.{dart.ffi::_Compound::_typedDataBase}, #C12, (#C10).{dart.core::List::[]}(dart.ffi::_abi()));
    get x2() → lib::Y
      return new lib::Y::#fromTypedDataBase( block {
        dart.core::Object #typedDataBase = this.{dart.ffi::_Compound::_typedDataBase};
        dart.core::int #offset = (#C10).{dart.core::List::[]}(dart.ffi::_abi());
      } =>#typedDataBase is dart.ffi::Pointer<dynamic> ?{dart.core::Object} dart.ffi::_fromAddress<lib::Y>(#typedDataBase.{dart.ffi::Pointer::address}.{dart.core::num::+}(#offset)) : let dart.typed_data::TypedData #typedData = dart._internal::unsafeCast<dart.typed_data::TypedData>(#typedDataBase) in #typedData.{dart.typed_data::TypedData::buffer}.{dart.typed_data::ByteBuffer::asUint8List}(#typedData.{dart.typed_data::TypedData::offsetInBytes}.{dart.core::num::+}(#offset), (#C10).{dart.core::List::[]}(dart.ffi::_abi())));
    set x2(lib::Y #externalFieldValue) → void
      return dart.ffi::_memCopy(this.{dart.ffi::_Compound::_typedDataBase}, (#C10).{dart.core::List::[]}(dart.ffi::_abi()), #externalFieldValue.{dart.ffi::_Compound::_typedDataBase}, #C12, (#C10).{dart.core::List::[]}(dart.ffi::_abi()));
    @#C11
    get x3() → dart.core::int
      return dart.ffi::_loadUint8(this.{dart.ffi::_Compound::_typedDataBase}, (#C29).{dart.core::List::[]}(dart.ffi::_abi()));
    @#C11
    set x3(dart.core::int #externalFieldValue) → void
      return dart.ffi::_storeUint8(this.{dart.ffi::_Compound::_typedDataBase}, (#C29).{dart.core::List::[]}(dart.ffi::_abi()), #externalFieldValue);
  }
}
constants  {
  #C1 = "vm:ffi:struct-fields"
  #C2 = TypeLiteralConstant(dart.ffi::Uint8)
  #C3 = TypeLiteralConstant(dart.ffi::Uint64)
  #C4 = <dart.core::Type>[#C2, #C3, #C2]
  #C5 = null
  #C6 = dart.ffi::_FfiStructLayout {fieldTypes:#C4, packing:#C5}
  #C7 = dart.core::pragma {name:#C1, options:#C6}
  #C8 = 24
  #C9 = 16
  #C10 = <dart.core::int*>[#C8, #C9, #C8]
  #C11 = dart.ffi::Uint8 {}
  #C12 = 0
  #C13 = <dart.core::int*>[#C12, #C12, #C12]
  #C14 = dart.ffi::Uint64 {}
  #C15 = 8
  #C16 = 4
  #C17 = <dart.core::int*>[#C15, #C16, #C15]
  #C18 = 12
  #C19 = <dart.core::int*>[#C9, #C18, #C9]
  #C20 = TypeLiteralConstant(lib::Y)
  #C21 = <dart.core::Type>[#C20, #C20, #C2]
  #C22 = dart.ffi::_FfiStructLayout {fieldTypes:#C21, packing:#C5}
  #C23 = dart.core::pragma {name:#C1, options:#C22}
  #C24 = 56
  #C25 = 36
  #C26 = <dart.core::int*>[#C24, #C25, #C24]
  #C27 = 48
  #C28 = 32
  #C29 = <dart.core::int*>[#C27, #C28, #C27]
}
