[test-suite] r214978 - ABI-Testsuite: Added coll directory

Sunil Srivastava sunil_srivastava at playstation.sony.com
Wed Aug 6 10:32:16 PDT 2014


Added: test-suite/trunk/ABI-Testsuite/test/coll/T_TF069.x
URL: http://llvm.org/viewvc/llvm-project/test-suite/trunk/ABI-Testsuite/test/coll/T_TF069.x?rev=214978&view=auto
==============================================================================
--- test-suite/trunk/ABI-Testsuite/test/coll/T_TF069.x (added)
+++ test-suite/trunk/ABI-Testsuite/test/coll/T_TF069.x Wed Aug  6 12:32:14 2014
@@ -0,0 +1,259520 @@
+// This file is distributed under the University of Illinois Open Source License.
+// See LICENSE.TXT for details.
+// RUN: c_compiler -c -o %t1.o -I "common" "common/testsuite.c"
+// RUN: cxx_compiler cxx_rtti -c %s -I "common" -o %t2.o
+// RUN: c_compiler -c %s -I "common" -o %t3.o
+// RUN: linker -o %t2%exeext  %t1.o %t2.o %t3.o
+// RUN: runtool %t2%exeext | checker "TEST PASSED"
+#include "testsuite.h"
+#ifdef __cplusplus
+
+struct  S485C6_nt  {
+  int s485c6f0[2];
+  void  mf485c6(); // _ZN9S485C6_nt7mf485c6Ev
+};
+//SIG(-1 S485C6_nt) C1{ m Fi[2]}
+
+
+void  S485C6_nt ::mf485c6(){}
+
+//skip512 S485C6_nt
+
+#else // __cplusplus
+
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S485C5_nt  {
+  int s485c5f0;
+  __tsi64 s485c5f1;
+  void *s485c5f2[4];
+  int s485c5f3[2];
+  void *s485c5f4;
+  ::S485C6_nt s485c5f5;
+  void *s485c5f6[2];
+  virtual  ~S485C5_nt(); // _ZN9S485C5_ntD1Ev
+  virtual void  v12(); // _ZN9S485C5_nt3v12Ev
+  virtual void  v13(); // _ZN9S485C5_nt3v13Ev
+  virtual void  v14(); // _ZN9S485C5_nt3v14Ev
+  virtual void  v15(); // _ZN9S485C5_nt3v15Ev
+  virtual void  v16(); // _ZN9S485C5_nt3v16Ev
+  virtual void  v17(); // _ZN9S485C5_nt3v17Ev
+  virtual void  v18(); // _ZN9S485C5_nt3v18Ev
+  virtual void  v19(); // _ZN9S485C5_nt3v19Ev
+  virtual void  v20(); // _ZN9S485C5_nt3v20Ev
+  virtual void  v21(); // _ZN9S485C5_nt3v21Ev
+  virtual void  v22(); // _ZN9S485C5_nt3v22Ev
+  virtual void  v23(); // _ZN9S485C5_nt3v23Ev
+  virtual void  v24(); // _ZN9S485C5_nt3v24Ev
+  virtual void  v25(); // _ZN9S485C5_nt3v25Ev
+  virtual void  v26(); // _ZN9S485C5_nt3v26Ev
+  virtual void  v27(); // _ZN9S485C5_nt3v27Ev
+  virtual void  v28(); // _ZN9S485C5_nt3v28Ev
+  virtual void  v29(); // _ZN9S485C5_nt3v29Ev
+  virtual void  v30(); // _ZN9S485C5_nt3v30Ev
+  virtual void  v31(); // _ZN9S485C5_nt3v31Ev
+  virtual void  v32(); // _ZN9S485C5_nt3v32Ev
+  virtual void  v33(); // _ZN9S485C5_nt3v33Ev
+  virtual void  v34(); // _ZN9S485C5_nt3v34Ev
+  virtual void  v35(); // _ZN9S485C5_nt3v35Ev
+  virtual void  v36(); // _ZN9S485C5_nt3v36Ev
+  virtual void  v37(); // _ZN9S485C5_nt3v37Ev
+  virtual void  v38(); // _ZN9S485C5_nt3v38Ev
+  virtual void  v39(); // _ZN9S485C5_nt3v39Ev
+  virtual void  v40(); // _ZN9S485C5_nt3v40Ev
+  virtual void  v41(); // _ZN9S485C5_nt3v41Ev
+  virtual void  v42(); // _ZN9S485C5_nt3v42Ev
+  virtual void  v43(); // _ZN9S485C5_nt3v43Ev
+  virtual void  v44(); // _ZN9S485C5_nt3v44Ev
+  virtual void  v45(); // _ZN9S485C5_nt3v45Ev
+  virtual void  v46(); // _ZN9S485C5_nt3v46Ev
+  virtual void  v47(); // _ZN9S485C5_nt3v47Ev
+  virtual void  v48(); // _ZN9S485C5_nt3v48Ev
+  virtual void  v49(); // _ZN9S485C5_nt3v49Ev
+  virtual void  v50(); // _ZN9S485C5_nt3v50Ev
+  virtual void  v51(); // _ZN9S485C5_nt3v51Ev
+  virtual void  v52(); // _ZN9S485C5_nt3v52Ev
+  virtual void  v53(); // _ZN9S485C5_nt3v53Ev
+  virtual void  v54(); // _ZN9S485C5_nt3v54Ev
+  virtual void  v55(); // _ZN9S485C5_nt3v55Ev
+  virtual void  v56(); // _ZN9S485C5_nt3v56Ev
+  virtual void  v57(); // _ZN9S485C5_nt3v57Ev
+  virtual void  v58(); // _ZN9S485C5_nt3v58Ev
+  virtual void  v59(); // _ZN9S485C5_nt3v59Ev
+  virtual void  v60(); // _ZN9S485C5_nt3v60Ev
+  virtual void  v61(); // _ZN9S485C5_nt3v61Ev
+  virtual void  v62(); // _ZN9S485C5_nt3v62Ev
+  virtual void  v63(); // _ZN9S485C5_nt3v63Ev
+  virtual void  v64(); // _ZN9S485C5_nt3v64Ev
+  virtual void  v65(); // _ZN9S485C5_nt3v65Ev
+  virtual void  v66(); // _ZN9S485C5_nt3v66Ev
+  virtual void  v67(); // _ZN9S485C5_nt3v67Ev
+  virtual void  v68(); // _ZN9S485C5_nt3v68Ev
+  virtual void  v69(); // _ZN9S485C5_nt3v69Ev
+  virtual void  v70(); // _ZN9S485C5_nt3v70Ev
+  virtual void  v71(); // _ZN9S485C5_nt3v71Ev
+  virtual void  v72(); // _ZN9S485C5_nt3v72Ev
+  virtual void  v73(); // _ZN9S485C5_nt3v73Ev
+  virtual void  v74(); // _ZN9S485C5_nt3v74Ev
+  virtual void  v75(); // _ZN9S485C5_nt3v75Ev
+  S485C5_nt(); // tgen
+};
+//SIG(-1 S485C5_nt) C1{ vd v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 v13 v14 v15 v16 v17 v18 v19 v20 v21 v22 v23 v24 v25 v26 v27 v28 v29 v30 v31 v32 v33 v34 v35 v36 v37 v38 v39 v40 v41 v42 v43 v44 v45 v46 v47 v48 v49 v50 v51 v52 v53 v54 v55 v56 v57 v58 v59 v60 v61 v62 v63 v64 Fi FL Fp[4] Fi[2] Fp FC2{ m Fi[2]} Fp[2]}
+
+
+ S485C5_nt ::~S485C5_nt(){ note_dtor("S485C5_nt", this);}
+void  S485C5_nt ::v12(){vfunc_called(this, "_ZN9S485C5_nt3v12Ev");}
+void  S485C5_nt ::v13(){vfunc_called(this, "_ZN9S485C5_nt3v13Ev");}
+void  S485C5_nt ::v14(){vfunc_called(this, "_ZN9S485C5_nt3v14Ev");}
+void  S485C5_nt ::v15(){vfunc_called(this, "_ZN9S485C5_nt3v15Ev");}
+void  S485C5_nt ::v16(){vfunc_called(this, "_ZN9S485C5_nt3v16Ev");}
+void  S485C5_nt ::v17(){vfunc_called(this, "_ZN9S485C5_nt3v17Ev");}
+void  S485C5_nt ::v18(){vfunc_called(this, "_ZN9S485C5_nt3v18Ev");}
+void  S485C5_nt ::v19(){vfunc_called(this, "_ZN9S485C5_nt3v19Ev");}
+void  S485C5_nt ::v20(){vfunc_called(this, "_ZN9S485C5_nt3v20Ev");}
+void  S485C5_nt ::v21(){vfunc_called(this, "_ZN9S485C5_nt3v21Ev");}
+void  S485C5_nt ::v22(){vfunc_called(this, "_ZN9S485C5_nt3v22Ev");}
+void  S485C5_nt ::v23(){vfunc_called(this, "_ZN9S485C5_nt3v23Ev");}
+void  S485C5_nt ::v24(){vfunc_called(this, "_ZN9S485C5_nt3v24Ev");}
+void  S485C5_nt ::v25(){vfunc_called(this, "_ZN9S485C5_nt3v25Ev");}
+void  S485C5_nt ::v26(){vfunc_called(this, "_ZN9S485C5_nt3v26Ev");}
+void  S485C5_nt ::v27(){vfunc_called(this, "_ZN9S485C5_nt3v27Ev");}
+void  S485C5_nt ::v28(){vfunc_called(this, "_ZN9S485C5_nt3v28Ev");}
+void  S485C5_nt ::v29(){vfunc_called(this, "_ZN9S485C5_nt3v29Ev");}
+void  S485C5_nt ::v30(){vfunc_called(this, "_ZN9S485C5_nt3v30Ev");}
+void  S485C5_nt ::v31(){vfunc_called(this, "_ZN9S485C5_nt3v31Ev");}
+void  S485C5_nt ::v32(){vfunc_called(this, "_ZN9S485C5_nt3v32Ev");}
+void  S485C5_nt ::v33(){vfunc_called(this, "_ZN9S485C5_nt3v33Ev");}
+void  S485C5_nt ::v34(){vfunc_called(this, "_ZN9S485C5_nt3v34Ev");}
+void  S485C5_nt ::v35(){vfunc_called(this, "_ZN9S485C5_nt3v35Ev");}
+void  S485C5_nt ::v36(){vfunc_called(this, "_ZN9S485C5_nt3v36Ev");}
+void  S485C5_nt ::v37(){vfunc_called(this, "_ZN9S485C5_nt3v37Ev");}
+void  S485C5_nt ::v38(){vfunc_called(this, "_ZN9S485C5_nt3v38Ev");}
+void  S485C5_nt ::v39(){vfunc_called(this, "_ZN9S485C5_nt3v39Ev");}
+void  S485C5_nt ::v40(){vfunc_called(this, "_ZN9S485C5_nt3v40Ev");}
+void  S485C5_nt ::v41(){vfunc_called(this, "_ZN9S485C5_nt3v41Ev");}
+void  S485C5_nt ::v42(){vfunc_called(this, "_ZN9S485C5_nt3v42Ev");}
+void  S485C5_nt ::v43(){vfunc_called(this, "_ZN9S485C5_nt3v43Ev");}
+void  S485C5_nt ::v44(){vfunc_called(this, "_ZN9S485C5_nt3v44Ev");}
+void  S485C5_nt ::v45(){vfunc_called(this, "_ZN9S485C5_nt3v45Ev");}
+void  S485C5_nt ::v46(){vfunc_called(this, "_ZN9S485C5_nt3v46Ev");}
+void  S485C5_nt ::v47(){vfunc_called(this, "_ZN9S485C5_nt3v47Ev");}
+void  S485C5_nt ::v48(){vfunc_called(this, "_ZN9S485C5_nt3v48Ev");}
+void  S485C5_nt ::v49(){vfunc_called(this, "_ZN9S485C5_nt3v49Ev");}
+void  S485C5_nt ::v50(){vfunc_called(this, "_ZN9S485C5_nt3v50Ev");}
+void  S485C5_nt ::v51(){vfunc_called(this, "_ZN9S485C5_nt3v51Ev");}
+void  S485C5_nt ::v52(){vfunc_called(this, "_ZN9S485C5_nt3v52Ev");}
+void  S485C5_nt ::v53(){vfunc_called(this, "_ZN9S485C5_nt3v53Ev");}
+void  S485C5_nt ::v54(){vfunc_called(this, "_ZN9S485C5_nt3v54Ev");}
+void  S485C5_nt ::v55(){vfunc_called(this, "_ZN9S485C5_nt3v55Ev");}
+void  S485C5_nt ::v56(){vfunc_called(this, "_ZN9S485C5_nt3v56Ev");}
+void  S485C5_nt ::v57(){vfunc_called(this, "_ZN9S485C5_nt3v57Ev");}
+void  S485C5_nt ::v58(){vfunc_called(this, "_ZN9S485C5_nt3v58Ev");}
+void  S485C5_nt ::v59(){vfunc_called(this, "_ZN9S485C5_nt3v59Ev");}
+void  S485C5_nt ::v60(){vfunc_called(this, "_ZN9S485C5_nt3v60Ev");}
+void  S485C5_nt ::v61(){vfunc_called(this, "_ZN9S485C5_nt3v61Ev");}
+void  S485C5_nt ::v62(){vfunc_called(this, "_ZN9S485C5_nt3v62Ev");}
+void  S485C5_nt ::v63(){vfunc_called(this, "_ZN9S485C5_nt3v63Ev");}
+void  S485C5_nt ::v64(){vfunc_called(this, "_ZN9S485C5_nt3v64Ev");}
+void  S485C5_nt ::v65(){vfunc_called(this, "_ZN9S485C5_nt3v65Ev");}
+void  S485C5_nt ::v66(){vfunc_called(this, "_ZN9S485C5_nt3v66Ev");}
+void  S485C5_nt ::v67(){vfunc_called(this, "_ZN9S485C5_nt3v67Ev");}
+void  S485C5_nt ::v68(){vfunc_called(this, "_ZN9S485C5_nt3v68Ev");}
+void  S485C5_nt ::v69(){vfunc_called(this, "_ZN9S485C5_nt3v69Ev");}
+void  S485C5_nt ::v70(){vfunc_called(this, "_ZN9S485C5_nt3v70Ev");}
+void  S485C5_nt ::v71(){vfunc_called(this, "_ZN9S485C5_nt3v71Ev");}
+void  S485C5_nt ::v72(){vfunc_called(this, "_ZN9S485C5_nt3v72Ev");}
+void  S485C5_nt ::v73(){vfunc_called(this, "_ZN9S485C5_nt3v73Ev");}
+void  S485C5_nt ::v74(){vfunc_called(this, "_ZN9S485C5_nt3v74Ev");}
+void  S485C5_nt ::v75(){vfunc_called(this, "_ZN9S485C5_nt3v75Ev");}
+S485C5_nt ::S485C5_nt(){ note_ctor("S485C5_nt", this);} // tgen
+
+//skip512 S485C5_nt
+
+#else // __cplusplus
+
+extern void _ZN9S485C5_ntC1Ev();
+extern void _ZN9S485C5_ntD1Ev();
+Name_Map name_map_S485C5_nt[] = {
+  NSPAIR(_ZN9S485C5_ntC1Ev),
+  NSPAIR(_ZN9S485C5_ntD1Ev),
+  {0,0}
+};
+extern VTBL_ENTRY _ZTI9S485C5_nt[];
+extern void _ZN9S485C5_ntD1Ev();
+extern void _ZN9S485C5_ntD0Ev();
+extern void _ZN9S485C5_nt3v12Ev();
+extern void _ZN9S485C5_nt3v13Ev();
+extern void _ZN9S485C5_nt3v14Ev();
+extern void _ZN9S485C5_nt3v15Ev();
+extern void _ZN9S485C5_nt3v16Ev();
+extern void _ZN9S485C5_nt3v17Ev();
+extern void _ZN9S485C5_nt3v18Ev();
+extern void _ZN9S485C5_nt3v19Ev();
+extern void _ZN9S485C5_nt3v20Ev();
+extern void _ZN9S485C5_nt3v21Ev();
+extern void _ZN9S485C5_nt3v22Ev();
+extern void _ZN9S485C5_nt3v23Ev();
+extern void _ZN9S485C5_nt3v24Ev();
+extern void _ZN9S485C5_nt3v25Ev();
+extern void _ZN9S485C5_nt3v26Ev();
+extern void _ZN9S485C5_nt3v27Ev();
+extern void _ZN9S485C5_nt3v28Ev();
+extern void _ZN9S485C5_nt3v29Ev();
+extern void _ZN9S485C5_nt3v30Ev();
+extern void _ZN9S485C5_nt3v31Ev();
+extern void _ZN9S485C5_nt3v32Ev();
+extern void _ZN9S485C5_nt3v33Ev();
+extern void _ZN9S485C5_nt3v34Ev();
+extern void _ZN9S485C5_nt3v35Ev();
+extern void _ZN9S485C5_nt3v36Ev();
+extern void _ZN9S485C5_nt3v37Ev();
+extern void _ZN9S485C5_nt3v38Ev();
+extern void _ZN9S485C5_nt3v39Ev();
+extern void _ZN9S485C5_nt3v40Ev();
+extern void _ZN9S485C5_nt3v41Ev();
+extern void _ZN9S485C5_nt3v42Ev();
+extern void _ZN9S485C5_nt3v43Ev();
+extern void _ZN9S485C5_nt3v44Ev();
+extern void _ZN9S485C5_nt3v45Ev();
+extern void _ZN9S485C5_nt3v46Ev();
+extern void _ZN9S485C5_nt3v47Ev();
+extern void _ZN9S485C5_nt3v48Ev();
+extern void _ZN9S485C5_nt3v49Ev();
+extern void _ZN9S485C5_nt3v50Ev();
+extern void _ZN9S485C5_nt3v51Ev();
+extern void _ZN9S485C5_nt3v52Ev();
+extern void _ZN9S485C5_nt3v53Ev();
+extern void _ZN9S485C5_nt3v54Ev();
+extern void _ZN9S485C5_nt3v55Ev();
+extern void _ZN9S485C5_nt3v56Ev();
+extern void _ZN9S485C5_nt3v57Ev();
+extern void _ZN9S485C5_nt3v58Ev();
+extern void _ZN9S485C5_nt3v59Ev();
+extern void _ZN9S485C5_nt3v60Ev();
+extern void _ZN9S485C5_nt3v61Ev();
+extern void _ZN9S485C5_nt3v62Ev();
+extern void _ZN9S485C5_nt3v63Ev();
+extern void _ZN9S485C5_nt3v64Ev();
+extern void _ZN9S485C5_nt3v65Ev();
+extern void _ZN9S485C5_nt3v66Ev();
+extern void _ZN9S485C5_nt3v67Ev();
+extern void _ZN9S485C5_nt3v68Ev();
+extern void _ZN9S485C5_nt3v69Ev();
+extern void _ZN9S485C5_nt3v70Ev();
+extern void _ZN9S485C5_nt3v71Ev();
+extern void _ZN9S485C5_nt3v72Ev();
+extern void _ZN9S485C5_nt3v73Ev();
+extern void _ZN9S485C5_nt3v74Ev();
+extern void _ZN9S485C5_nt3v75Ev();
+static  VTBL_ENTRY vtc_S485C5_nt[] = {
+  0,
+  (VTBL_ENTRY)&(_ZTI9S485C5_nt[0]),
+  (VTBL_ENTRY)&_ZN9S485C5_ntD1Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_ntD0Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v12Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v13Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v14Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v15Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v16Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v17Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v18Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v19Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v20Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v21Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v22Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v23Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v24Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v25Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v26Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v27Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v28Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v29Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v30Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v31Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v32Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v33Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v34Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v35Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v36Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v37Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v38Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v39Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v40Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v41Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v42Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v43Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v44Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v45Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v46Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v47Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v48Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v49Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v50Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v51Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v52Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v53Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v54Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v55Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v56Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v57Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v58Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v59Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v60Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v61Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v62Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v63Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v64Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v65Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v66Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v67Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v68Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v69Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v70Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v71Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v72Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v73Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v74Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v75Ev,
+};
+extern VTBL_ENTRY _ZTI9S485C5_nt[];
+VTBL_ENTRY *P__ZTI9S485C5_nt = _ZTI9S485C5_nt; 
+extern  VTBL_ENTRY _ZTV9S485C5_nt[];
+Class_Descriptor cd_S485C5_nt = {  "S485C5_nt", // class name
+  0,0,//no base classes
+  &(vtc_S485C5_nt[0]), // expected_vtbl_contents
+  0, //no vtt
+  ABISELECT(96,60), // object size
+  NSPAIRA(_ZTI9S485C5_nt),ABISELECT(16,8), //typeinfo_var
+  NSPAIRA(_ZTV9S485C5_nt),68, //virtual function table var
+  2, // offset into main vftv pointed to by object[0]
+  {0,0},0, // virtual table table var
+  0, // n_initialized_bases
+  0, // has_virtual_bases
+  1, // has_class_type_fields
+  0, // alt-thunk-names
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S485C4_nt  : S485C5_nt {
+  virtual  ~S485C4_nt(); // _ZN9S485C4_ntD1Ev
+  virtual void  v76(); // _ZN9S485C4_nt3v76Ev
+  virtual void  v77(); // _ZN9S485C4_nt3v77Ev
+  S485C4_nt(); // tgen
+};
+//SIG(-1 S485C4_nt) C1{ BC2{ vd v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 v13 v14 v15 v16 v17 v18 v19 v20 v21 v22 v23 v24 v25 v26 v27 v28 v29 v30 v31 v32 v33 v34 v35 v36 v37 v38 v39 v40 v41 v42 v43 v44 v45 v46 v47 v48 v49 v50 v51 v52 v53 v54 v55 v56 v57 v58 v59 v60 v61 v62 v63 v64 v65 v66 Fi FL Fp[4] Fi[2] Fp FC3{ m Fi[2]} Fp[2]} vd v1 v2}
+
+
+ S485C4_nt ::~S485C4_nt(){ note_dtor("S485C4_nt", this);}
+void  S485C4_nt ::v76(){vfunc_called(this, "_ZN9S485C4_nt3v76Ev");}
+void  S485C4_nt ::v77(){vfunc_called(this, "_ZN9S485C4_nt3v77Ev");}
+S485C4_nt ::S485C4_nt(){ note_ctor("S485C4_nt", this);} // tgen
+
+//skip512 S485C4_nt
+
+#else // __cplusplus
+
+extern void _ZN9S485C4_ntC1Ev();
+extern void _ZN9S485C4_ntD1Ev();
+Name_Map name_map_S485C4_nt[] = {
+  NSPAIR(_ZN9S485C4_ntC1Ev),
+  NSPAIR(_ZN9S485C4_ntD1Ev),
+  {0,0}
+};
+extern Class_Descriptor cd_S485C5_nt;
+extern VTBL_ENTRY _ZTI9S485C5_nt[];
+extern  VTBL_ENTRY _ZTV9S485C5_nt[];
+static Base_Class bases_S485C4_nt[] = {
+  // ofst, vfto, nneg, vtt_idx, base_vtt_idx, init_seq, direct, virtual
+  {&cd_S485C5_nt,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    1, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {0}};
+extern VTBL_ENTRY _ZTI9S485C4_nt[];
+extern void _ZN9S485C4_ntD1Ev();
+extern void _ZN9S485C4_ntD0Ev();
+extern void _ZN9S485C5_nt3v12Ev();
+extern void _ZN9S485C5_nt3v13Ev();
+extern void _ZN9S485C5_nt3v14Ev();
+extern void _ZN9S485C5_nt3v15Ev();
+extern void _ZN9S485C5_nt3v16Ev();
+extern void _ZN9S485C5_nt3v17Ev();
+extern void _ZN9S485C5_nt3v18Ev();
+extern void _ZN9S485C5_nt3v19Ev();
+extern void _ZN9S485C5_nt3v20Ev();
+extern void _ZN9S485C5_nt3v21Ev();
+extern void _ZN9S485C5_nt3v22Ev();
+extern void _ZN9S485C5_nt3v23Ev();
+extern void _ZN9S485C5_nt3v24Ev();
+extern void _ZN9S485C5_nt3v25Ev();
+extern void _ZN9S485C5_nt3v26Ev();
+extern void _ZN9S485C5_nt3v27Ev();
+extern void _ZN9S485C5_nt3v28Ev();
+extern void _ZN9S485C5_nt3v29Ev();
+extern void _ZN9S485C5_nt3v30Ev();
+extern void _ZN9S485C5_nt3v31Ev();
+extern void _ZN9S485C5_nt3v32Ev();
+extern void _ZN9S485C5_nt3v33Ev();
+extern void _ZN9S485C5_nt3v34Ev();
+extern void _ZN9S485C5_nt3v35Ev();
+extern void _ZN9S485C5_nt3v36Ev();
+extern void _ZN9S485C5_nt3v37Ev();
+extern void _ZN9S485C5_nt3v38Ev();
+extern void _ZN9S485C5_nt3v39Ev();
+extern void _ZN9S485C5_nt3v40Ev();
+extern void _ZN9S485C5_nt3v41Ev();
+extern void _ZN9S485C5_nt3v42Ev();
+extern void _ZN9S485C5_nt3v43Ev();
+extern void _ZN9S485C5_nt3v44Ev();
+extern void _ZN9S485C5_nt3v45Ev();
+extern void _ZN9S485C5_nt3v46Ev();
+extern void _ZN9S485C5_nt3v47Ev();
+extern void _ZN9S485C5_nt3v48Ev();
+extern void _ZN9S485C5_nt3v49Ev();
+extern void _ZN9S485C5_nt3v50Ev();
+extern void _ZN9S485C5_nt3v51Ev();
+extern void _ZN9S485C5_nt3v52Ev();
+extern void _ZN9S485C5_nt3v53Ev();
+extern void _ZN9S485C5_nt3v54Ev();
+extern void _ZN9S485C5_nt3v55Ev();
+extern void _ZN9S485C5_nt3v56Ev();
+extern void _ZN9S485C5_nt3v57Ev();
+extern void _ZN9S485C5_nt3v58Ev();
+extern void _ZN9S485C5_nt3v59Ev();
+extern void _ZN9S485C5_nt3v60Ev();
+extern void _ZN9S485C5_nt3v61Ev();
+extern void _ZN9S485C5_nt3v62Ev();
+extern void _ZN9S485C5_nt3v63Ev();
+extern void _ZN9S485C5_nt3v64Ev();
+extern void _ZN9S485C5_nt3v65Ev();
+extern void _ZN9S485C5_nt3v66Ev();
+extern void _ZN9S485C5_nt3v67Ev();
+extern void _ZN9S485C5_nt3v68Ev();
+extern void _ZN9S485C5_nt3v69Ev();
+extern void _ZN9S485C5_nt3v70Ev();
+extern void _ZN9S485C5_nt3v71Ev();
+extern void _ZN9S485C5_nt3v72Ev();
+extern void _ZN9S485C5_nt3v73Ev();
+extern void _ZN9S485C5_nt3v74Ev();
+extern void _ZN9S485C5_nt3v75Ev();
+extern void _ZN9S485C4_nt3v76Ev();
+extern void _ZN9S485C4_nt3v77Ev();
+static  VTBL_ENTRY vtc_S485C4_nt[] = {
+  0,
+  (VTBL_ENTRY)&(_ZTI9S485C4_nt[0]),
+  (VTBL_ENTRY)&_ZN9S485C4_ntD1Ev,
+  (VTBL_ENTRY)&_ZN9S485C4_ntD0Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v12Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v13Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v14Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v15Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v16Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v17Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v18Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v19Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v20Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v21Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v22Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v23Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v24Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v25Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v26Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v27Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v28Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v29Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v30Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v31Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v32Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v33Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v34Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v35Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v36Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v37Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v38Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v39Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v40Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v41Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v42Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v43Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v44Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v45Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v46Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v47Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v48Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v49Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v50Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v51Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v52Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v53Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v54Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v55Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v56Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v57Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v58Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v59Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v60Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v61Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v62Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v63Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v64Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v65Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v66Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v67Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v68Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v69Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v70Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v71Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v72Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v73Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v74Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v75Ev,
+  (VTBL_ENTRY)&_ZN9S485C4_nt3v76Ev,
+  (VTBL_ENTRY)&_ZN9S485C4_nt3v77Ev,
+};
+extern VTBL_ENTRY _ZTI9S485C4_nt[];
+VTBL_ENTRY *P__ZTI9S485C4_nt = _ZTI9S485C4_nt; 
+extern  VTBL_ENTRY _ZTV9S485C4_nt[];
+Class_Descriptor cd_S485C4_nt = {  "S485C4_nt", // class name
+  bases_S485C4_nt, 1,
+  &(vtc_S485C4_nt[0]), // expected_vtbl_contents
+  0, //no vtt
+  ABISELECT(96,60), // object size
+  NSPAIRA(_ZTI9S485C4_nt),ABISELECT(24,12), //typeinfo_var
+  NSPAIRA(_ZTV9S485C4_nt),70, //virtual function table var
+  2, // offset into main vftv pointed to by object[0]
+  {0,0},0, // virtual table table var
+  1, // n_initialized_bases
+  0, // has_virtual_bases
+  1, // has_class_type_fields
+  0, // alt-thunk-names
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S485C7_nt  {
+  int s485c7f0[4];
+  char s485c7f1[9];
+  void  mf485c7(); // _ZN9S485C7_nt7mf485c7Ev
+};
+//SIG(-1 S485C7_nt) C1{ m Fi[4] Fc[9]}
+
+
+void  S485C7_nt ::mf485c7(){}
+
+//skip512 S485C7_nt
+
+#else // __cplusplus
+
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S485C10_nt  {
+  void *s485c10f0;
+  int s485c10f1[2];
+  void  mf485c10(); // _ZN10S485C10_nt8mf485c10Ev
+};
+//SIG(-1 S485C10_nt) C1{ m Fp Fi[2]}
+
+
+void  S485C10_nt ::mf485c10(){}
+
+//skip512 S485C10_nt
+
+#else // __cplusplus
+
+extern VTBL_ENTRY _ZTI10S485C10_nt[];
+VTBL_ENTRY *P__ZTI10S485C10_nt = _ZTI10S485C10_nt; 
+Class_Descriptor cd_S485C10_nt = {  "S485C10_nt", // class name
+  0,0,//no base classes
+  0, // no vftv
+  0, //no vtt
+  ABISELECT(16,12), // object size
+  NSPAIRA(_ZTI10S485C10_nt),ABISELECT(16,8), //typeinfo_var
+  {0,0},0, // virtual function table var
+  2, // offset into main vftv pointed to by object[0]
+  {0,0},0, // virtual table table var
+  0, // n_initialized_bases
+  0, // has_virtual_bases
+  0, // has_class_type_fields
+  0, // alt-thunk-names
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S485C9_nt  : S485C10_nt {
+};
+//SIG(-1 S485C9_nt) C1{ BC2{ m Fp Fi[2]}}
+
+
+
+//skip512 S485C9_nt
+
+#else // __cplusplus
+
+extern Class_Descriptor cd_S485C10_nt;
+extern VTBL_ENTRY _ZTI10S485C10_nt[];
+static Base_Class bases_S485C9_nt[] = {
+  // ofst, vfto, nneg, vtt_idx, base_vtt_idx, init_seq, direct, virtual
+  {&cd_S485C10_nt,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    -1, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {0}};
+Class_Descriptor cd_S485C9_nt = {  "S485C9_nt", // class name
+  bases_S485C9_nt, 1,
+  0, // no vftv
+  0, //no vtt
+  ABISELECT(16,12), // object size
+  {0,0},0, // typeinfo_var
+  {0,0},0, // virtual function table var
+  2, // offset into main vftv pointed to by object[0]
+  {0,0},0, // virtual table table var
+  0, // n_initialized_bases
+  0, // has_virtual_bases
+  0, // has_class_type_fields
+  0, // alt-thunk-names
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S485C8_nt  : S485C9_nt {
+};
+//SIG(-1 S485C8_nt) C1{ BC2{ BC3{ m Fp Fi[2]}}}
+
+
+
+//skip512 S485C8_nt
+
+#else // __cplusplus
+
+extern Class_Descriptor cd_S485C10_nt;
+extern VTBL_ENTRY _ZTI10S485C10_nt[];
+extern Class_Descriptor cd_S485C9_nt;
+static Base_Class bases_S485C8_nt[] = {
+  // ofst, vfto, nneg, vtt_idx, base_vtt_idx, init_seq, direct, virtual
+  {&cd_S485C10_nt,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    -1, //init_seq
+    1, //immediately_derived
+  0, 0},
+  {&cd_S485C9_nt,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    -1, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {0}};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S485C14  : S485C10_nt {
+};
+//SIG(-1 S485C14) C1{ BC2{ m Fp Fi[2]}}
+
+
+
+static void Test_S485C14()
+{
+  extern Class_Descriptor cd_S485C14;
+  void *lvp;
+  {
+    ABISELECT(double,int) buf[ABISELECT(3,4)];
+    init_test(&cd_S485C14, buf);
+    S485C14 &lv = *(new (buf) S485C14());
+    lvp = (void*)&lv;
+    check2(sizeof(lv), ABISELECT(16,12), "sizeof(S485C14)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S485C14)");
+    check_base_class_offset(lv, (S485C10_nt*), 0, "S485C14");
+    test_class_info(&lv, &cd_S485C14);
+  }
+  Check_Ctor_Dtor_Calls(lvp);
+}
+static Arrange_To_Call_Me vS485C14(Test_S485C14, "S485C14", ABISELECT(16,12));
+
+#else // __cplusplus
+
+extern Class_Descriptor cd_S485C10_nt;
+extern VTBL_ENTRY _ZTI10S485C10_nt[];
+static Base_Class bases_S485C14[] = {
+  // ofst, vfto, nneg, vtt_idx, base_vtt_idx, init_seq, direct, virtual
+  {&cd_S485C10_nt,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    -1, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {0}};
+Class_Descriptor cd_S485C14 = {  "S485C14", // class name
+  bases_S485C14, 1,
+  0, // no vftv
+  0, //no vtt
+  ABISELECT(16,12), // object size
+  {0,0},0, // typeinfo_var
+  {0,0},0, // virtual function table var
+  2, // offset into main vftv pointed to by object[0]
+  {0,0},0, // virtual table table var
+  0, // n_initialized_bases
+  0, // has_virtual_bases
+  0, // has_class_type_fields
+  0, // alt-thunk-names
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S485C13  : S485C14 {
+};
+//SIG(-1 S485C13) C1{ BC2{ BC3{ m Fp Fi[2]}}}
+
+
+
+static void Test_S485C13()
+{
+  extern Class_Descriptor cd_S485C13;
+  void *lvp;
+  {
+    ABISELECT(double,int) buf[ABISELECT(3,4)];
+    init_test(&cd_S485C13, buf);
+    S485C13 &lv = *(new (buf) S485C13());
+    lvp = (void*)&lv;
+    check2(sizeof(lv), ABISELECT(16,12), "sizeof(S485C13)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S485C13)");
+    check_base_class_offset(lv, (S485C10_nt*)(S485C14*), 0, "S485C13");
+    check_base_class_offset(lv, (S485C14*), 0, "S485C13");
+    test_class_info(&lv, &cd_S485C13);
+  }
+  Check_Ctor_Dtor_Calls(lvp);
+}
+static Arrange_To_Call_Me vS485C13(Test_S485C13, "S485C13", ABISELECT(16,12));
+
+#else // __cplusplus
+
+extern Class_Descriptor cd_S485C10_nt;
+extern VTBL_ENTRY _ZTI10S485C10_nt[];
+extern Class_Descriptor cd_S485C14;
+static Base_Class bases_S485C13[] = {
+  // ofst, vfto, nneg, vtt_idx, base_vtt_idx, init_seq, direct, virtual
+  {&cd_S485C10_nt,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    -1, //init_seq
+    1, //immediately_derived
+  0, 0},
+  {&cd_S485C14,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    -1, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {0}};
+Class_Descriptor cd_S485C13 = {  "S485C13", // class name
+  bases_S485C13, 2,
+  0, // no vftv
+  0, //no vtt
+  ABISELECT(16,12), // object size
+  {0,0},0, // typeinfo_var
+  {0,0},0, // virtual function table var
+  2, // offset into main vftv pointed to by object[0]
+  {0,0},0, // virtual table table var
+  0, // n_initialized_bases
+  0, // has_virtual_bases
+  0, // has_class_type_fields
+  0, // alt-thunk-names
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S485C18  : S485C10_nt {
+};
+//SIG(-1 S485C18) C1{ BC2{ m Fp Fi[2]}}
+
+
+
+static void Test_S485C18()
+{
+  extern Class_Descriptor cd_S485C18;
+  void *lvp;
+  {
+    ABISELECT(double,int) buf[ABISELECT(3,4)];
+    init_test(&cd_S485C18, buf);
+    S485C18 &lv = *(new (buf) S485C18());
+    lvp = (void*)&lv;
+    check2(sizeof(lv), ABISELECT(16,12), "sizeof(S485C18)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S485C18)");
+    check_base_class_offset(lv, (S485C10_nt*), 0, "S485C18");
+    test_class_info(&lv, &cd_S485C18);
+  }
+  Check_Ctor_Dtor_Calls(lvp);
+}
+static Arrange_To_Call_Me vS485C18(Test_S485C18, "S485C18", ABISELECT(16,12));
+
+#else // __cplusplus
+
+extern Class_Descriptor cd_S485C10_nt;
+extern VTBL_ENTRY _ZTI10S485C10_nt[];
+static Base_Class bases_S485C18[] = {
+  // ofst, vfto, nneg, vtt_idx, base_vtt_idx, init_seq, direct, virtual
+  {&cd_S485C10_nt,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    -1, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {0}};
+Class_Descriptor cd_S485C18 = {  "S485C18", // class name
+  bases_S485C18, 1,
+  0, // no vftv
+  0, //no vtt
+  ABISELECT(16,12), // object size
+  {0,0},0, // typeinfo_var
+  {0,0},0, // virtual function table var
+  2, // offset into main vftv pointed to by object[0]
+  {0,0},0, // virtual table table var
+  0, // n_initialized_bases
+  0, // has_virtual_bases
+  0, // has_class_type_fields
+  0, // alt-thunk-names
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S485C17  : S485C18 {
+};
+//SIG(-1 S485C17) C1{ BC2{ BC3{ m Fp Fi[2]}}}
+
+
+
+static void Test_S485C17()
+{
+  extern Class_Descriptor cd_S485C17;
+  void *lvp;
+  {
+    ABISELECT(double,int) buf[ABISELECT(3,4)];
+    init_test(&cd_S485C17, buf);
+    S485C17 &lv = *(new (buf) S485C17());
+    lvp = (void*)&lv;
+    check2(sizeof(lv), ABISELECT(16,12), "sizeof(S485C17)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S485C17)");
+    check_base_class_offset(lv, (S485C10_nt*)(S485C18*), 0, "S485C17");
+    check_base_class_offset(lv, (S485C18*), 0, "S485C17");
+    test_class_info(&lv, &cd_S485C17);
+  }
+  Check_Ctor_Dtor_Calls(lvp);
+}
+static Arrange_To_Call_Me vS485C17(Test_S485C17, "S485C17", ABISELECT(16,12));
+
+#else // __cplusplus
+
+extern Class_Descriptor cd_S485C10_nt;
+extern VTBL_ENTRY _ZTI10S485C10_nt[];
+extern Class_Descriptor cd_S485C18;
+static Base_Class bases_S485C17[] = {
+  // ofst, vfto, nneg, vtt_idx, base_vtt_idx, init_seq, direct, virtual
+  {&cd_S485C10_nt,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    -1, //init_seq
+    1, //immediately_derived
+  0, 0},
+  {&cd_S485C18,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    -1, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {0}};
+Class_Descriptor cd_S485C17 = {  "S485C17", // class name
+  bases_S485C17, 2,
+  0, // no vftv
+  0, //no vtt
+  ABISELECT(16,12), // object size
+  {0,0},0, // typeinfo_var
+  {0,0},0, // virtual function table var
+  2, // offset into main vftv pointed to by object[0]
+  {0,0},0, // virtual table table var
+  0, // n_initialized_bases
+  0, // has_virtual_bases
+  0, // has_class_type_fields
+  0, // alt-thunk-names
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S485C19_nt  {
+  void *s485c19f0;
+  ::S485C6_nt s485c19f1;
+  void  mf485c19(); // _ZN10S485C19_nt8mf485c19Ev
+};
+//SIG(-1 S485C19_nt) C1{ m Fp FC2{ m Fi[2]}}
+
+
+void  S485C19_nt ::mf485c19(){}
+
+//skip512 S485C19_nt
+
+#else // __cplusplus
+
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S485C3_nt  : S485C4_nt {
+  ::S485C7_nt s485c3f0;
+  int s485c3f1;
+  unsigned int s485c3f2:1;
+  unsigned int s485c3f3:1;
+  unsigned int s485c3f4:1;
+  unsigned int s485c3f5:1;
+  ::S485C8_nt s485c3f6;
+  ::S485C8_nt s485c3f7;
+  void *s485c3f8;
+  ::S485C13 s485c3f9;
+  ::S485C13 s485c3f10;
+  ::S485C13 s485c3f11;
+  ::S485C17 s485c3f12;
+  char s485c3f13;
+  int s485c3f14;
+  void *s485c3f15;
+  ::S485C6_nt s485c3f16;
+  ::S485C6_nt s485c3f17;
+  ::S485C6_nt s485c3f18;
+  ::S485C6_nt s485c3f19;
+  ::S485C6_nt s485c3f20;
+  ::S485C6_nt s485c3f21;
+  ::S485C19_nt s485c3f22;
+  ::S485C19_nt s485c3f23;
+  ::S485C19_nt s485c3f24;
+  ::S485C19_nt s485c3f25;
+  ::S485C19_nt s485c3f26;
+  ::S485C19_nt s485c3f27;
+  ::S485C19_nt s485c3f28;
+  ::S485C19_nt s485c3f29;
+  ::S485C19_nt s485c3f30;
+  ::S485C19_nt s485c3f31;
+  virtual  ~S485C3_nt(); // _ZN9S485C3_ntD1Ev
+  virtual void  v78(); // _ZN9S485C3_nt3v78Ev
+  virtual void  v79(); // _ZN9S485C3_nt3v79Ev
+  virtual void  v80(); // _ZN9S485C3_nt3v80Ev
+  virtual void  v81(); // _ZN9S485C3_nt3v81Ev
+  virtual void  v82(); // _ZN9S485C3_nt3v82Ev
+  virtual void  v83(); // _ZN9S485C3_nt3v83Ev
+  virtual void  v84(); // _ZN9S485C3_nt3v84Ev
+  virtual void  v85(); // _ZN9S485C3_nt3v85Ev
+  virtual void  v86(); // _ZN9S485C3_nt3v86Ev
+  virtual void  v87(); // _ZN9S485C3_nt3v87Ev
+  virtual void  v88(); // _ZN9S485C3_nt3v88Ev
+  virtual void  v89(); // _ZN9S485C3_nt3v89Ev
+  virtual void  v90(); // _ZN9S485C3_nt3v90Ev
+  virtual void  v91(); // _ZN9S485C3_nt3v91Ev
+  virtual void  v92(); // _ZN9S485C3_nt3v92Ev
+  virtual void  v93(); // _ZN9S485C3_nt3v93Ev
+  virtual void  v94(); // _ZN9S485C3_nt3v94Ev
+  virtual void  v95(); // _ZN9S485C3_nt3v95Ev
+  virtual void  v96(); // _ZN9S485C3_nt3v96Ev
+  virtual void  v97(); // _ZN9S485C3_nt3v97Ev
+  virtual void  v98(); // _ZN9S485C3_nt3v98Ev
+  virtual void  v99(); // _ZN9S485C3_nt3v99Ev
+  virtual void  v100(); // _ZN9S485C3_nt4v100Ev
+  virtual void  v101(); // _ZN9S485C3_nt4v101Ev
+  virtual void  v102(); // _ZN9S485C3_nt4v102Ev
+  virtual void  v103(); // _ZN9S485C3_nt4v103Ev
+  virtual void  v104(); // _ZN9S485C3_nt4v104Ev
+  virtual void  v105(); // _ZN9S485C3_nt4v105Ev
+  virtual void  v106(); // _ZN9S485C3_nt4v106Ev
+  virtual void  v107(); // _ZN9S485C3_nt4v107Ev
+  virtual void  v108(); // _ZN9S485C3_nt4v108Ev
+  virtual void  v109(); // _ZN9S485C3_nt4v109Ev
+  virtual void  v110(); // _ZN9S485C3_nt4v110Ev
+  virtual void  v111(); // _ZN9S485C3_nt4v111Ev
+  virtual void  v112(); // _ZN9S485C3_nt4v112Ev
+  virtual void  v113(); // _ZN9S485C3_nt4v113Ev
+  virtual void  v114(); // _ZN9S485C3_nt4v114Ev
+  virtual void  v115(); // _ZN9S485C3_nt4v115Ev
+  virtual void  v116(); // _ZN9S485C3_nt4v116Ev
+  virtual void  v117(); // _ZN9S485C3_nt4v117Ev
+  virtual void  v118(); // _ZN9S485C3_nt4v118Ev
+  virtual void  v119(); // _ZN9S485C3_nt4v119Ev
+  virtual void  v120(); // _ZN9S485C3_nt4v120Ev
+  virtual void  v121(); // _ZN9S485C3_nt4v121Ev
+  virtual void  v122(); // _ZN9S485C3_nt4v122Ev
+  virtual void  v123(); // _ZN9S485C3_nt4v123Ev
+  virtual void  v124(); // _ZN9S485C3_nt4v124Ev
+  virtual void  v125(); // _ZN9S485C3_nt4v125Ev
+  virtual void  v126(); // _ZN9S485C3_nt4v126Ev
+  virtual void  v127(); // _ZN9S485C3_nt4v127Ev
+  virtual void  v128(); // _ZN9S485C3_nt4v128Ev
+  virtual void  v129(); // _ZN9S485C3_nt4v129Ev
+  virtual void  v130(); // _ZN9S485C3_nt4v130Ev
+  virtual void  v131(); // _ZN9S485C3_nt4v131Ev
+  virtual void  v132(); // _ZN9S485C3_nt4v132Ev
+  virtual void  v133(); // _ZN9S485C3_nt4v133Ev
+  virtual void  v134(); // _ZN9S485C3_nt4v134Ev
+  virtual void  v135(); // _ZN9S485C3_nt4v135Ev
+  virtual void  v136(); // _ZN9S485C3_nt4v136Ev
+  virtual void  v137(); // _ZN9S485C3_nt4v137Ev
+  virtual void  v138(); // _ZN9S485C3_nt4v138Ev
+  virtual void  v139(); // _ZN9S485C3_nt4v139Ev
+  virtual void  v140(); // _ZN9S485C3_nt4v140Ev
+  virtual void  v141(); // _ZN9S485C3_nt4v141Ev
+  virtual void  v142(); // _ZN9S485C3_nt4v142Ev
+  virtual void  v143(); // _ZN9S485C3_nt4v143Ev
+  virtual void  v144(); // _ZN9S485C3_nt4v144Ev
+  virtual void  v145(); // _ZN9S485C3_nt4v145Ev
+  virtual void  v146(); // _ZN9S485C3_nt4v146Ev
+  virtual void  v147(); // _ZN9S485C3_nt4v147Ev
+  virtual void  v148(); // _ZN9S485C3_nt4v148Ev
+  virtual void  v149(); // _ZN9S485C3_nt4v149Ev
+  virtual void  v150(); // _ZN9S485C3_nt4v150Ev
+  virtual void  v151(); // _ZN9S485C3_nt4v151Ev
+  virtual void  v152(); // _ZN9S485C3_nt4v152Ev
+  virtual void  v153(); // _ZN9S485C3_nt4v153Ev
+  S485C3_nt(); // tgen
+};
+//SIG(-1 S485C3_nt) C1{ BC2{ BC3{ vd v77 v78 v79 v80 v81 v82 v83 v84 v85 v86 v87 v88 v89 v90 v91 v92 v93 v94 v95 v96 v97 v98 v99 v100 v101 v102 v103 v104 v105 v106 v107 v108 v109 v110 v111 v112 v113 v114 v115 v116 v117 v118 v119 v120 v121 v122 v123 v124 v125 v126 v127 v128 v129 v130 v131 v132 v133 v134 v135 v136 v137 v138 v139 v140 Fi FL Fp[4] Fi[2] Fp FC4{ m Fi[2]} Fp[2]} vd v141 v142} vd v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 v13 v14 v15 v16 v17 v18 v19 v20 v21 v22 v23 v24 v25 v26 v27 v28 v29 v30 v31 v32 v33 v34 v35 v36 v37 v38 v39 v40 v41 v42 v43 v44 v45 v46 v47 v48 v49 v50 v51 v52 v53 v54 v55 v56 v57 v58 v59 v60 v61 v62 v63 v64 v65 v66 v67 v68 v69 v70 v71 v72 v73 v74 v75 v76 FC5{ m Fi[4] Fc[9]} Fi Fi:1 Fi:1 Fi:1 Fi:1 FC6{ BC7{ BC8{ m Fp Fi[2]}}} FC6 Fp FC9{ BC10{ BC8}} FC9 FC9 FC11{ BC12{ BC8}} Fc Fi Fp FC4 FC4 FC4 FC4 FC4 FC4 FC13{ m Fp FC4} FC13 FC13 FC13 FC13 FC13 FC13 FC13 FC13 FC13}
+
+
+ S485C3_nt ::~S485C3_nt(){ note_dtor("S485C3_nt", this);}
+void  S485C3_nt ::v78(){vfunc_called(this, "_ZN9S485C3_nt3v78Ev");}
+void  S485C3_nt ::v79(){vfunc_called(this, "_ZN9S485C3_nt3v79Ev");}
+void  S485C3_nt ::v80(){vfunc_called(this, "_ZN9S485C3_nt3v80Ev");}
+void  S485C3_nt ::v81(){vfunc_called(this, "_ZN9S485C3_nt3v81Ev");}
+void  S485C3_nt ::v82(){vfunc_called(this, "_ZN9S485C3_nt3v82Ev");}
+void  S485C3_nt ::v83(){vfunc_called(this, "_ZN9S485C3_nt3v83Ev");}
+void  S485C3_nt ::v84(){vfunc_called(this, "_ZN9S485C3_nt3v84Ev");}
+void  S485C3_nt ::v85(){vfunc_called(this, "_ZN9S485C3_nt3v85Ev");}
+void  S485C3_nt ::v86(){vfunc_called(this, "_ZN9S485C3_nt3v86Ev");}
+void  S485C3_nt ::v87(){vfunc_called(this, "_ZN9S485C3_nt3v87Ev");}
+void  S485C3_nt ::v88(){vfunc_called(this, "_ZN9S485C3_nt3v88Ev");}
+void  S485C3_nt ::v89(){vfunc_called(this, "_ZN9S485C3_nt3v89Ev");}
+void  S485C3_nt ::v90(){vfunc_called(this, "_ZN9S485C3_nt3v90Ev");}
+void  S485C3_nt ::v91(){vfunc_called(this, "_ZN9S485C3_nt3v91Ev");}
+void  S485C3_nt ::v92(){vfunc_called(this, "_ZN9S485C3_nt3v92Ev");}
+void  S485C3_nt ::v93(){vfunc_called(this, "_ZN9S485C3_nt3v93Ev");}
+void  S485C3_nt ::v94(){vfunc_called(this, "_ZN9S485C3_nt3v94Ev");}
+void  S485C3_nt ::v95(){vfunc_called(this, "_ZN9S485C3_nt3v95Ev");}
+void  S485C3_nt ::v96(){vfunc_called(this, "_ZN9S485C3_nt3v96Ev");}
+void  S485C3_nt ::v97(){vfunc_called(this, "_ZN9S485C3_nt3v97Ev");}
+void  S485C3_nt ::v98(){vfunc_called(this, "_ZN9S485C3_nt3v98Ev");}
+void  S485C3_nt ::v99(){vfunc_called(this, "_ZN9S485C3_nt3v99Ev");}
+void  S485C3_nt ::v100(){vfunc_called(this, "_ZN9S485C3_nt4v100Ev");}
+void  S485C3_nt ::v101(){vfunc_called(this, "_ZN9S485C3_nt4v101Ev");}
+void  S485C3_nt ::v102(){vfunc_called(this, "_ZN9S485C3_nt4v102Ev");}
+void  S485C3_nt ::v103(){vfunc_called(this, "_ZN9S485C3_nt4v103Ev");}
+void  S485C3_nt ::v104(){vfunc_called(this, "_ZN9S485C3_nt4v104Ev");}
+void  S485C3_nt ::v105(){vfunc_called(this, "_ZN9S485C3_nt4v105Ev");}
+void  S485C3_nt ::v106(){vfunc_called(this, "_ZN9S485C3_nt4v106Ev");}
+void  S485C3_nt ::v107(){vfunc_called(this, "_ZN9S485C3_nt4v107Ev");}
+void  S485C3_nt ::v108(){vfunc_called(this, "_ZN9S485C3_nt4v108Ev");}
+void  S485C3_nt ::v109(){vfunc_called(this, "_ZN9S485C3_nt4v109Ev");}
+void  S485C3_nt ::v110(){vfunc_called(this, "_ZN9S485C3_nt4v110Ev");}
+void  S485C3_nt ::v111(){vfunc_called(this, "_ZN9S485C3_nt4v111Ev");}
+void  S485C3_nt ::v112(){vfunc_called(this, "_ZN9S485C3_nt4v112Ev");}
+void  S485C3_nt ::v113(){vfunc_called(this, "_ZN9S485C3_nt4v113Ev");}
+void  S485C3_nt ::v114(){vfunc_called(this, "_ZN9S485C3_nt4v114Ev");}
+void  S485C3_nt ::v115(){vfunc_called(this, "_ZN9S485C3_nt4v115Ev");}
+void  S485C3_nt ::v116(){vfunc_called(this, "_ZN9S485C3_nt4v116Ev");}
+void  S485C3_nt ::v117(){vfunc_called(this, "_ZN9S485C3_nt4v117Ev");}
+void  S485C3_nt ::v118(){vfunc_called(this, "_ZN9S485C3_nt4v118Ev");}
+void  S485C3_nt ::v119(){vfunc_called(this, "_ZN9S485C3_nt4v119Ev");}
+void  S485C3_nt ::v120(){vfunc_called(this, "_ZN9S485C3_nt4v120Ev");}
+void  S485C3_nt ::v121(){vfunc_called(this, "_ZN9S485C3_nt4v121Ev");}
+void  S485C3_nt ::v122(){vfunc_called(this, "_ZN9S485C3_nt4v122Ev");}
+void  S485C3_nt ::v123(){vfunc_called(this, "_ZN9S485C3_nt4v123Ev");}
+void  S485C3_nt ::v124(){vfunc_called(this, "_ZN9S485C3_nt4v124Ev");}
+void  S485C3_nt ::v125(){vfunc_called(this, "_ZN9S485C3_nt4v125Ev");}
+void  S485C3_nt ::v126(){vfunc_called(this, "_ZN9S485C3_nt4v126Ev");}
+void  S485C3_nt ::v127(){vfunc_called(this, "_ZN9S485C3_nt4v127Ev");}
+void  S485C3_nt ::v128(){vfunc_called(this, "_ZN9S485C3_nt4v128Ev");}
+void  S485C3_nt ::v129(){vfunc_called(this, "_ZN9S485C3_nt4v129Ev");}
+void  S485C3_nt ::v130(){vfunc_called(this, "_ZN9S485C3_nt4v130Ev");}
+void  S485C3_nt ::v131(){vfunc_called(this, "_ZN9S485C3_nt4v131Ev");}
+void  S485C3_nt ::v132(){vfunc_called(this, "_ZN9S485C3_nt4v132Ev");}
+void  S485C3_nt ::v133(){vfunc_called(this, "_ZN9S485C3_nt4v133Ev");}
+void  S485C3_nt ::v134(){vfunc_called(this, "_ZN9S485C3_nt4v134Ev");}
+void  S485C3_nt ::v135(){vfunc_called(this, "_ZN9S485C3_nt4v135Ev");}
+void  S485C3_nt ::v136(){vfunc_called(this, "_ZN9S485C3_nt4v136Ev");}
+void  S485C3_nt ::v137(){vfunc_called(this, "_ZN9S485C3_nt4v137Ev");}
+void  S485C3_nt ::v138(){vfunc_called(this, "_ZN9S485C3_nt4v138Ev");}
+void  S485C3_nt ::v139(){vfunc_called(this, "_ZN9S485C3_nt4v139Ev");}
+void  S485C3_nt ::v140(){vfunc_called(this, "_ZN9S485C3_nt4v140Ev");}
+void  S485C3_nt ::v141(){vfunc_called(this, "_ZN9S485C3_nt4v141Ev");}
+void  S485C3_nt ::v142(){vfunc_called(this, "_ZN9S485C3_nt4v142Ev");}
+void  S485C3_nt ::v143(){vfunc_called(this, "_ZN9S485C3_nt4v143Ev");}
+void  S485C3_nt ::v144(){vfunc_called(this, "_ZN9S485C3_nt4v144Ev");}
+void  S485C3_nt ::v145(){vfunc_called(this, "_ZN9S485C3_nt4v145Ev");}
+void  S485C3_nt ::v146(){vfunc_called(this, "_ZN9S485C3_nt4v146Ev");}
+void  S485C3_nt ::v147(){vfunc_called(this, "_ZN9S485C3_nt4v147Ev");}
+void  S485C3_nt ::v148(){vfunc_called(this, "_ZN9S485C3_nt4v148Ev");}
+void  S485C3_nt ::v149(){vfunc_called(this, "_ZN9S485C3_nt4v149Ev");}
+void  S485C3_nt ::v150(){vfunc_called(this, "_ZN9S485C3_nt4v150Ev");}
+void  S485C3_nt ::v151(){vfunc_called(this, "_ZN9S485C3_nt4v151Ev");}
+void  S485C3_nt ::v152(){vfunc_called(this, "_ZN9S485C3_nt4v152Ev");}
+void  S485C3_nt ::v153(){vfunc_called(this, "_ZN9S485C3_nt4v153Ev");}
+S485C3_nt ::S485C3_nt(){ note_ctor("S485C3_nt", this);} // tgen
+
+//skip512 S485C3_nt
+
+#else // __cplusplus
+
+extern void _ZN9S485C3_ntC1Ev();
+extern void _ZN9S485C3_ntD1Ev();
+Name_Map name_map_S485C3_nt[] = {
+  NSPAIR(_ZN9S485C3_ntC1Ev),
+  NSPAIR(_ZN9S485C3_ntD1Ev),
+  {0,0}
+};
+extern Class_Descriptor cd_S485C5_nt;
+extern VTBL_ENTRY _ZTI9S485C5_nt[];
+extern  VTBL_ENTRY _ZTV9S485C5_nt[];
+extern Class_Descriptor cd_S485C4_nt;
+extern VTBL_ENTRY _ZTI9S485C4_nt[];
+extern  VTBL_ENTRY _ZTV9S485C4_nt[];
+static Base_Class bases_S485C3_nt[] = {
+  // ofst, vfto, nneg, vtt_idx, base_vtt_idx, init_seq, direct, virtual
+  {&cd_S485C5_nt,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    1, //init_seq
+    1, //immediately_derived
+  0, 0},
+  {&cd_S485C4_nt,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    2, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {0}};
+extern VTBL_ENTRY _ZTI9S485C3_nt[];
+extern void _ZN9S485C3_ntD1Ev();
+extern void _ZN9S485C3_ntD0Ev();
+extern void _ZN9S485C5_nt3v12Ev();
+extern void _ZN9S485C5_nt3v13Ev();
+extern void _ZN9S485C5_nt3v14Ev();
+extern void _ZN9S485C5_nt3v15Ev();
+extern void _ZN9S485C5_nt3v16Ev();
+extern void _ZN9S485C5_nt3v17Ev();
+extern void _ZN9S485C5_nt3v18Ev();
+extern void _ZN9S485C5_nt3v19Ev();
+extern void _ZN9S485C5_nt3v20Ev();
+extern void _ZN9S485C5_nt3v21Ev();
+extern void _ZN9S485C5_nt3v22Ev();
+extern void _ZN9S485C5_nt3v23Ev();
+extern void _ZN9S485C5_nt3v24Ev();
+extern void _ZN9S485C5_nt3v25Ev();
+extern void _ZN9S485C5_nt3v26Ev();
+extern void _ZN9S485C5_nt3v27Ev();
+extern void _ZN9S485C5_nt3v28Ev();
+extern void _ZN9S485C5_nt3v29Ev();
+extern void _ZN9S485C5_nt3v30Ev();
+extern void _ZN9S485C5_nt3v31Ev();
+extern void _ZN9S485C5_nt3v32Ev();
+extern void _ZN9S485C5_nt3v33Ev();
+extern void _ZN9S485C5_nt3v34Ev();
+extern void _ZN9S485C5_nt3v35Ev();
+extern void _ZN9S485C5_nt3v36Ev();
+extern void _ZN9S485C5_nt3v37Ev();
+extern void _ZN9S485C5_nt3v38Ev();
+extern void _ZN9S485C5_nt3v39Ev();
+extern void _ZN9S485C5_nt3v40Ev();
+extern void _ZN9S485C5_nt3v41Ev();
+extern void _ZN9S485C5_nt3v42Ev();
+extern void _ZN9S485C5_nt3v43Ev();
+extern void _ZN9S485C5_nt3v44Ev();
+extern void _ZN9S485C5_nt3v45Ev();
+extern void _ZN9S485C5_nt3v46Ev();
+extern void _ZN9S485C5_nt3v47Ev();
+extern void _ZN9S485C5_nt3v48Ev();
+extern void _ZN9S485C5_nt3v49Ev();
+extern void _ZN9S485C5_nt3v50Ev();
+extern void _ZN9S485C5_nt3v51Ev();
+extern void _ZN9S485C5_nt3v52Ev();
+extern void _ZN9S485C5_nt3v53Ev();
+extern void _ZN9S485C5_nt3v54Ev();
+extern void _ZN9S485C5_nt3v55Ev();
+extern void _ZN9S485C5_nt3v56Ev();
+extern void _ZN9S485C5_nt3v57Ev();
+extern void _ZN9S485C5_nt3v58Ev();
+extern void _ZN9S485C5_nt3v59Ev();
+extern void _ZN9S485C5_nt3v60Ev();
+extern void _ZN9S485C5_nt3v61Ev();
+extern void _ZN9S485C5_nt3v62Ev();
+extern void _ZN9S485C5_nt3v63Ev();
+extern void _ZN9S485C5_nt3v64Ev();
+extern void _ZN9S485C5_nt3v65Ev();
+extern void _ZN9S485C5_nt3v66Ev();
+extern void _ZN9S485C5_nt3v67Ev();
+extern void _ZN9S485C5_nt3v68Ev();
+extern void _ZN9S485C5_nt3v69Ev();
+extern void _ZN9S485C5_nt3v70Ev();
+extern void _ZN9S485C5_nt3v71Ev();
+extern void _ZN9S485C5_nt3v72Ev();
+extern void _ZN9S485C5_nt3v73Ev();
+extern void _ZN9S485C5_nt3v74Ev();
+extern void _ZN9S485C5_nt3v75Ev();
+extern void _ZN9S485C4_nt3v76Ev();
+extern void _ZN9S485C4_nt3v77Ev();
+extern void _ZN9S485C3_nt3v78Ev();
+extern void _ZN9S485C3_nt3v79Ev();
+extern void _ZN9S485C3_nt3v80Ev();
+extern void _ZN9S485C3_nt3v81Ev();
+extern void _ZN9S485C3_nt3v82Ev();
+extern void _ZN9S485C3_nt3v83Ev();
+extern void _ZN9S485C3_nt3v84Ev();
+extern void _ZN9S485C3_nt3v85Ev();
+extern void _ZN9S485C3_nt3v86Ev();
+extern void _ZN9S485C3_nt3v87Ev();
+extern void _ZN9S485C3_nt3v88Ev();
+extern void _ZN9S485C3_nt3v89Ev();
+extern void _ZN9S485C3_nt3v90Ev();
+extern void _ZN9S485C3_nt3v91Ev();
+extern void _ZN9S485C3_nt3v92Ev();
+extern void _ZN9S485C3_nt3v93Ev();
+extern void _ZN9S485C3_nt3v94Ev();
+extern void _ZN9S485C3_nt3v95Ev();
+extern void _ZN9S485C3_nt3v96Ev();
+extern void _ZN9S485C3_nt3v97Ev();
+extern void _ZN9S485C3_nt3v98Ev();
+extern void _ZN9S485C3_nt3v99Ev();
+extern void _ZN9S485C3_nt4v100Ev();
+extern void _ZN9S485C3_nt4v101Ev();
+extern void _ZN9S485C3_nt4v102Ev();
+extern void _ZN9S485C3_nt4v103Ev();
+extern void _ZN9S485C3_nt4v104Ev();
+extern void _ZN9S485C3_nt4v105Ev();
+extern void _ZN9S485C3_nt4v106Ev();
+extern void _ZN9S485C3_nt4v107Ev();
+extern void _ZN9S485C3_nt4v108Ev();
+extern void _ZN9S485C3_nt4v109Ev();
+extern void _ZN9S485C3_nt4v110Ev();
+extern void _ZN9S485C3_nt4v111Ev();
+extern void _ZN9S485C3_nt4v112Ev();
+extern void _ZN9S485C3_nt4v113Ev();
+extern void _ZN9S485C3_nt4v114Ev();
+extern void _ZN9S485C3_nt4v115Ev();
+extern void _ZN9S485C3_nt4v116Ev();
+extern void _ZN9S485C3_nt4v117Ev();
+extern void _ZN9S485C3_nt4v118Ev();
+extern void _ZN9S485C3_nt4v119Ev();
+extern void _ZN9S485C3_nt4v120Ev();
+extern void _ZN9S485C3_nt4v121Ev();
+extern void _ZN9S485C3_nt4v122Ev();
+extern void _ZN9S485C3_nt4v123Ev();
+extern void _ZN9S485C3_nt4v124Ev();
+extern void _ZN9S485C3_nt4v125Ev();
+extern void _ZN9S485C3_nt4v126Ev();
+extern void _ZN9S485C3_nt4v127Ev();
+extern void _ZN9S485C3_nt4v128Ev();
+extern void _ZN9S485C3_nt4v129Ev();
+extern void _ZN9S485C3_nt4v130Ev();
+extern void _ZN9S485C3_nt4v131Ev();
+extern void _ZN9S485C3_nt4v132Ev();
+extern void _ZN9S485C3_nt4v133Ev();
+extern void _ZN9S485C3_nt4v134Ev();
+extern void _ZN9S485C3_nt4v135Ev();
+extern void _ZN9S485C3_nt4v136Ev();
+extern void _ZN9S485C3_nt4v137Ev();
+extern void _ZN9S485C3_nt4v138Ev();
+extern void _ZN9S485C3_nt4v139Ev();
+extern void _ZN9S485C3_nt4v140Ev();
+extern void _ZN9S485C3_nt4v141Ev();
+extern void _ZN9S485C3_nt4v142Ev();
+extern void _ZN9S485C3_nt4v143Ev();
+extern void _ZN9S485C3_nt4v144Ev();
+extern void _ZN9S485C3_nt4v145Ev();
+extern void _ZN9S485C3_nt4v146Ev();
+extern void _ZN9S485C3_nt4v147Ev();
+extern void _ZN9S485C3_nt4v148Ev();
+extern void _ZN9S485C3_nt4v149Ev();
+extern void _ZN9S485C3_nt4v150Ev();
+extern void _ZN9S485C3_nt4v151Ev();
+extern void _ZN9S485C3_nt4v152Ev();
+extern void _ZN9S485C3_nt4v153Ev();
+static  VTBL_ENTRY vtc_S485C3_nt[] = {
+  0,
+  (VTBL_ENTRY)&(_ZTI9S485C3_nt[0]),
+  (VTBL_ENTRY)&_ZN9S485C3_ntD1Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_ntD0Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v12Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v13Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v14Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v15Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v16Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v17Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v18Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v19Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v20Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v21Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v22Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v23Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v24Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v25Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v26Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v27Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v28Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v29Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v30Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v31Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v32Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v33Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v34Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v35Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v36Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v37Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v38Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v39Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v40Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v41Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v42Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v43Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v44Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v45Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v46Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v47Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v48Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v49Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v50Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v51Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v52Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v53Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v54Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v55Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v56Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v57Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v58Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v59Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v60Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v61Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v62Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v63Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v64Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v65Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v66Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v67Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v68Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v69Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v70Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v71Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v72Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v73Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v74Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v75Ev,
+  (VTBL_ENTRY)&_ZN9S485C4_nt3v76Ev,
+  (VTBL_ENTRY)&_ZN9S485C4_nt3v77Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt3v78Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt3v79Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt3v80Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt3v81Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt3v82Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt3v83Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt3v84Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt3v85Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt3v86Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt3v87Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt3v88Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt3v89Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt3v90Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt3v91Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt3v92Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt3v93Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt3v94Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt3v95Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt3v96Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt3v97Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt3v98Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt3v99Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v100Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v101Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v102Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v103Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v104Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v105Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v106Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v107Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v108Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v109Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v110Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v111Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v112Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v113Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v114Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v115Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v116Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v117Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v118Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v119Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v120Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v121Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v122Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v123Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v124Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v125Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v126Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v127Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v128Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v129Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v130Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v131Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v132Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v133Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v134Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v135Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v136Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v137Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v138Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v139Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v140Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v141Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v142Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v143Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v144Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v145Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v146Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v147Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v148Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v149Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v150Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v151Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v152Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v153Ev,
+};
+extern VTBL_ENTRY _ZTI9S485C3_nt[];
+VTBL_ENTRY *P__ZTI9S485C3_nt = _ZTI9S485C3_nt; 
+extern  VTBL_ENTRY _ZTV9S485C3_nt[];
+Class_Descriptor cd_S485C3_nt = {  "S485C3_nt", // class name
+  bases_S485C3_nt, 2,
+  &(vtc_S485C3_nt[0]), // expected_vtbl_contents
+  0, //no vtt
+  ABISELECT(464,352), // object size
+  NSPAIRA(_ZTI9S485C3_nt),ABISELECT(24,12), //typeinfo_var
+  NSPAIRA(_ZTV9S485C3_nt),146, //virtual function table var
+  2, // offset into main vftv pointed to by object[0]
+  {0,0},0, // virtual table table var
+  2, // n_initialized_bases
+  0, // has_virtual_bases
+  1, // has_class_type_fields
+  0, // alt-thunk-names
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S485C21_nt  {
+  int s485c21f0[4];
+  void  mf485c21(); // _ZN10S485C21_nt8mf485c21Ev
+};
+//SIG(-1 S485C21_nt) C1{ m Fi[4]}
+
+
+void  S485C21_nt ::mf485c21(){}
+
+//skip512 S485C21_nt
+
+#else // __cplusplus
+
+Class_Descriptor cd_S485C21_nt = {  "S485C21_nt", // class name
+  0,0,//no base classes
+  0, // no vftv
+  0, //no vtt
+  16, // object size
+  {0,0},0, // typeinfo_var
+  {0,0},0, // virtual function table var
+  2, // offset into main vftv pointed to by object[0]
+  {0,0},0, // virtual table table var
+  0, // n_initialized_bases
+  0, // has_virtual_bases
+  0, // has_class_type_fields
+  0, // alt-thunk-names
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S485C20_nt  : S485C21_nt {
+};
+//SIG(-1 S485C20_nt) C1{ BC2{ m Fi[4]}}
+
+
+
+//skip512 S485C20_nt
+
+#else // __cplusplus
+
+extern Class_Descriptor cd_S485C21_nt;
+static Base_Class bases_S485C20_nt[] = {
+  // ofst, vfto, nneg, vtt_idx, base_vtt_idx, init_seq, direct, virtual
+  {&cd_S485C21_nt,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    -1, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {0}};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S485C22_nt  {
+  ::S485C6_nt s485c22f0;
+  void *s485c22f1;
+  ::S485C20_nt s485c22f2;
+  void *s485c22f3;
+  void  mf485c22(); // _ZN10S485C22_nt8mf485c22Ev
+};
+//SIG(-1 S485C22_nt) C1{ m FC2{ m Fi[2]} Fp FC3{ BC4{ m Fi[4]}} Fp}
+
+
+void  S485C22_nt ::mf485c22(){}
+
+//skip512 S485C22_nt
+
+#else // __cplusplus
+
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S485C24_nt  {
+  void *s485c24f0[8];
+  char s485c24f1[4];
+  void  mf485c24(); // _ZN10S485C24_nt8mf485c24Ev
+};
+//SIG(-1 S485C24_nt) C1{ m Fp[8] Fc[4]}
+
+
+void  S485C24_nt ::mf485c24(){}
+
+//skip512 S485C24_nt
+
+#else // __cplusplus
+
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S485C26_nt  {
+  int s485c26f0[4];
+  char s485c26f1[4];
+  void  mf485c26(); // _ZN10S485C26_nt8mf485c26Ev
+};
+//SIG(-1 S485C26_nt) C1{ m Fi[4] Fc[4]}
+
+
+void  S485C26_nt ::mf485c26(){}
+
+//skip512 S485C26_nt
+
+#else // __cplusplus
+
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S485C25_nt  {
+  void *s485c25f0[5];
+  ::S485C26_nt s485c25f1;
+  unsigned int s485c25f2:1;
+  unsigned int s485c25f3:1;
+  int s485c25f4;
+  char s485c25f5[8];
+  void  mf485c25(); // _ZN10S485C25_nt8mf485c25Ev
+};
+//SIG(-1 S485C25_nt) C1{ m Fp[5] FC2{ m Fi[4] Fc[4]} Fi:1 Fi:1 Fi Fc[8]}
+
+
+void  S485C25_nt ::mf485c25(){}
+
+//skip512 S485C25_nt
+
+#else // __cplusplus
+
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S485C29_nt  {
+  int s485c29f0[3];
+  void  mf485c29(); // _ZN10S485C29_nt8mf485c29Ev
+};
+//SIG(-1 S485C29_nt) C1{ m Fi[3]}
+
+
+void  S485C29_nt ::mf485c29(){}
+
+//skip512 S485C29_nt
+
+#else // __cplusplus
+
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S485C30_nt  {
+  void  mf485c30(); // _ZN10S485C30_nt8mf485c30Ev
+};
+//SIG(-1 S485C30_nt) C1{ m}
+
+
+void  S485C30_nt ::mf485c30(){}
+
+//skip512 S485C30_nt
+
+#else // __cplusplus
+
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S485C32_nt  {
+  int s485c32f0[2];
+  char s485c32f1[2];
+  void  mf485c32(); // _ZN10S485C32_nt8mf485c32Ev
+};
+//SIG(-1 S485C32_nt) C1{ m Fi[2] Fc[2]}
+
+
+void  S485C32_nt ::mf485c32(){}
+
+//skip512 S485C32_nt
+
+#else // __cplusplus
+
+Class_Descriptor cd_S485C32_nt = {  "S485C32_nt", // class name
+  0,0,//no base classes
+  0, // no vftv
+  0, //no vtt
+  12, // object size
+  {0,0},0, // typeinfo_var
+  {0,0},0, // virtual function table var
+  2, // offset into main vftv pointed to by object[0]
+  {0,0},0, // virtual table table var
+  0, // n_initialized_bases
+  0, // has_virtual_bases
+  0, // has_class_type_fields
+  0, // alt-thunk-names
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S485C31_nt  : S485C32_nt {
+  int s485c31f0;
+};
+//SIG(-1 S485C31_nt) C1{ BC2{ m Fi[2] Fc[2]} Fi}
+
+
+
+//skip512 S485C31_nt
+
+#else // __cplusplus
+
+extern Class_Descriptor cd_S485C32_nt;
+static Base_Class bases_S485C31_nt[] = {
+  // ofst, vfto, nneg, vtt_idx, base_vtt_idx, init_seq, direct, virtual
+  {&cd_S485C32_nt,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    -1, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {0}};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S485C28_nt  {
+  ::S485C29_nt s485c28f0;
+  ::S485C30_nt s485c28f1;
+  ::S485C31_nt s485c28f2;
+  char s485c28f3;
+  void  mf485c28(); // _ZN10S485C28_nt8mf485c28Ev
+};
+//SIG(-1 S485C28_nt) C1{ m FC2{ m Fi[3]} FC3{ m} FC4{ BC5{ m Fi[2] Fc[2]} Fi} Fc}
+
+
+void  S485C28_nt ::mf485c28(){}
+
+//skip512 S485C28_nt
+
+#else // __cplusplus
+
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S485C36_nt  {
+  void *s485c36f0[2];
+  void  mf485c36(); // _ZN10S485C36_nt8mf485c36Ev
+};
+//SIG(-1 S485C36_nt) C1{ m Fp[2]}
+
+
+void  S485C36_nt ::mf485c36(){}
+
+//skip512 S485C36_nt
+
+#else // __cplusplus
+
+Class_Descriptor cd_S485C36_nt = {  "S485C36_nt", // class name
+  0,0,//no base classes
+  0, // no vftv
+  0, //no vtt
+  ABISELECT(16,8), // object size
+  {0,0},0, // typeinfo_var
+  {0,0},0, // virtual function table var
+  2, // offset into main vftv pointed to by object[0]
+  {0,0},0, // virtual table table var
+  0, // n_initialized_bases
+  0, // has_virtual_bases
+  0, // has_class_type_fields
+  0, // alt-thunk-names
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S485C35_nt  : S485C36_nt {
+};
+//SIG(-1 S485C35_nt) C1{ BC2{ m Fp[2]}}
+
+
+
+//skip512 S485C35_nt
+
+#else // __cplusplus
+
+extern Class_Descriptor cd_S485C36_nt;
+static Base_Class bases_S485C35_nt[] = {
+  // ofst, vfto, nneg, vtt_idx, base_vtt_idx, init_seq, direct, virtual
+  {&cd_S485C36_nt,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    -1, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {0}};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S485C39  : S485C10_nt {
+};
+//SIG(-1 S485C39) C1{ BC2{ m Fp Fi[2]}}
+
+
+
+static void Test_S485C39()
+{
+  extern Class_Descriptor cd_S485C39;
+  void *lvp;
+  {
+    ABISELECT(double,int) buf[ABISELECT(3,4)];
+    init_test(&cd_S485C39, buf);
+    S485C39 &lv = *(new (buf) S485C39());
+    lvp = (void*)&lv;
+    check2(sizeof(lv), ABISELECT(16,12), "sizeof(S485C39)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S485C39)");
+    check_base_class_offset(lv, (S485C10_nt*), 0, "S485C39");
+    test_class_info(&lv, &cd_S485C39);
+  }
+  Check_Ctor_Dtor_Calls(lvp);
+}
+static Arrange_To_Call_Me vS485C39(Test_S485C39, "S485C39", ABISELECT(16,12));
+
+#else // __cplusplus
+
+extern Class_Descriptor cd_S485C10_nt;
+extern VTBL_ENTRY _ZTI10S485C10_nt[];
+static Base_Class bases_S485C39[] = {
+  // ofst, vfto, nneg, vtt_idx, base_vtt_idx, init_seq, direct, virtual
+  {&cd_S485C10_nt,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    -1, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {0}};
+Class_Descriptor cd_S485C39 = {  "S485C39", // class name
+  bases_S485C39, 1,
+  0, // no vftv
+  0, //no vtt
+  ABISELECT(16,12), // object size
+  {0,0},0, // typeinfo_var
+  {0,0},0, // virtual function table var
+  2, // offset into main vftv pointed to by object[0]
+  {0,0},0, // virtual table table var
+  0, // n_initialized_bases
+  0, // has_virtual_bases
+  0, // has_class_type_fields
+  0, // alt-thunk-names
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S485C38  : S485C39 {
+};
+//SIG(-1 S485C38) C1{ BC2{ BC3{ m Fp Fi[2]}}}
+
+
+
+static void Test_S485C38()
+{
+  extern Class_Descriptor cd_S485C38;
+  void *lvp;
+  {
+    ABISELECT(double,int) buf[ABISELECT(3,4)];
+    init_test(&cd_S485C38, buf);
+    S485C38 &lv = *(new (buf) S485C38());
+    lvp = (void*)&lv;
+    check2(sizeof(lv), ABISELECT(16,12), "sizeof(S485C38)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S485C38)");
+    check_base_class_offset(lv, (S485C10_nt*)(S485C39*), 0, "S485C38");
+    check_base_class_offset(lv, (S485C39*), 0, "S485C38");
+    test_class_info(&lv, &cd_S485C38);
+  }
+  Check_Ctor_Dtor_Calls(lvp);
+}
+static Arrange_To_Call_Me vS485C38(Test_S485C38, "S485C38", ABISELECT(16,12));
+
+#else // __cplusplus
+
+extern Class_Descriptor cd_S485C10_nt;
+extern VTBL_ENTRY _ZTI10S485C10_nt[];
+extern Class_Descriptor cd_S485C39;
+static Base_Class bases_S485C38[] = {
+  // ofst, vfto, nneg, vtt_idx, base_vtt_idx, init_seq, direct, virtual
+  {&cd_S485C10_nt,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    -1, //init_seq
+    1, //immediately_derived
+  0, 0},
+  {&cd_S485C39,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    -1, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {0}};
+Class_Descriptor cd_S485C38 = {  "S485C38", // class name
+  bases_S485C38, 2,
+  0, // no vftv
+  0, //no vtt
+  ABISELECT(16,12), // object size
+  {0,0},0, // typeinfo_var
+  {0,0},0, // virtual function table var
+  2, // offset into main vftv pointed to by object[0]
+  {0,0},0, // virtual table table var
+  0, // n_initialized_bases
+  0, // has_virtual_bases
+  0, // has_class_type_fields
+  0, // alt-thunk-names
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S485C37_nt  : S485C38 {
+};
+//SIG(-1 S485C37_nt) C1{ BC2{ BC3{ BC4{ m Fp Fi[2]}}}}
+
+
+
+//skip512 S485C37_nt
+
+#else // __cplusplus
+
+extern Class_Descriptor cd_S485C10_nt;
+extern VTBL_ENTRY _ZTI10S485C10_nt[];
+extern Class_Descriptor cd_S485C39;
+extern Class_Descriptor cd_S485C38;
+static Base_Class bases_S485C37_nt[] = {
+  // ofst, vfto, nneg, vtt_idx, base_vtt_idx, init_seq, direct, virtual
+  {&cd_S485C10_nt,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    -1, //init_seq
+    1, //immediately_derived
+  0, 0},
+  {&cd_S485C39,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    -1, //init_seq
+    2, //immediately_derived
+  0, 0},
+  {&cd_S485C38,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    -1, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {0}};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S485C34_nt  {
+  ::S485C35_nt s485c34f0;
+  char s485c34f1;
+  ::S485C37_nt s485c34f2;
+  int s485c34f3;
+  ::S485C6_nt s485c34f4;
+  ::S485C6_nt s485c34f5;
+  void *s485c34f6;
+  void  mf485c34(); // _ZN10S485C34_nt8mf485c34Ev
+};
+//SIG(-1 S485C34_nt) C1{ m FC2{ BC3{ m Fp[2]}} Fc FC4{ BC5{ BC6{ BC7{ m Fp Fi[2]}}}} Fi FC8{ m Fi[2]} FC8 Fp}
+
+
+void  S485C34_nt ::mf485c34(){}
+
+//skip512 S485C34_nt
+
+#else // __cplusplus
+
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S485C43  : S485C10_nt {
+};
+//SIG(-1 S485C43) C1{ BC2{ m Fp Fi[2]}}
+
+
+
+static void Test_S485C43()
+{
+  extern Class_Descriptor cd_S485C43;
+  void *lvp;
+  {
+    ABISELECT(double,int) buf[ABISELECT(3,4)];
+    init_test(&cd_S485C43, buf);
+    S485C43 &lv = *(new (buf) S485C43());
+    lvp = (void*)&lv;
+    check2(sizeof(lv), ABISELECT(16,12), "sizeof(S485C43)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S485C43)");
+    check_base_class_offset(lv, (S485C10_nt*), 0, "S485C43");
+    test_class_info(&lv, &cd_S485C43);
+  }
+  Check_Ctor_Dtor_Calls(lvp);
+}
+static Arrange_To_Call_Me vS485C43(Test_S485C43, "S485C43", ABISELECT(16,12));
+
+#else // __cplusplus
+
+extern Class_Descriptor cd_S485C10_nt;
+extern VTBL_ENTRY _ZTI10S485C10_nt[];
+static Base_Class bases_S485C43[] = {
+  // ofst, vfto, nneg, vtt_idx, base_vtt_idx, init_seq, direct, virtual
+  {&cd_S485C10_nt,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    -1, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {0}};
+Class_Descriptor cd_S485C43 = {  "S485C43", // class name
+  bases_S485C43, 1,
+  0, // no vftv
+  0, //no vtt
+  ABISELECT(16,12), // object size
+  {0,0},0, // typeinfo_var
+  {0,0},0, // virtual function table var
+  2, // offset into main vftv pointed to by object[0]
+  {0,0},0, // virtual table table var
+  0, // n_initialized_bases
+  0, // has_virtual_bases
+  0, // has_class_type_fields
+  0, // alt-thunk-names
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S485C42  : S485C43 {
+};
+//SIG(-1 S485C42) C1{ BC2{ BC3{ m Fp Fi[2]}}}
+
+
+
+static void Test_S485C42()
+{
+  extern Class_Descriptor cd_S485C42;
+  void *lvp;
+  {
+    ABISELECT(double,int) buf[ABISELECT(3,4)];
+    init_test(&cd_S485C42, buf);
+    S485C42 &lv = *(new (buf) S485C42());
+    lvp = (void*)&lv;
+    check2(sizeof(lv), ABISELECT(16,12), "sizeof(S485C42)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S485C42)");
+    check_base_class_offset(lv, (S485C10_nt*)(S485C43*), 0, "S485C42");
+    check_base_class_offset(lv, (S485C43*), 0, "S485C42");
+    test_class_info(&lv, &cd_S485C42);
+  }
+  Check_Ctor_Dtor_Calls(lvp);
+}
+static Arrange_To_Call_Me vS485C42(Test_S485C42, "S485C42", ABISELECT(16,12));
+
+#else // __cplusplus
+
+extern Class_Descriptor cd_S485C10_nt;
+extern VTBL_ENTRY _ZTI10S485C10_nt[];
+extern Class_Descriptor cd_S485C43;
+static Base_Class bases_S485C42[] = {
+  // ofst, vfto, nneg, vtt_idx, base_vtt_idx, init_seq, direct, virtual
+  {&cd_S485C10_nt,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    -1, //init_seq
+    1, //immediately_derived
+  0, 0},
+  {&cd_S485C43,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    -1, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {0}};
+Class_Descriptor cd_S485C42 = {  "S485C42", // class name
+  bases_S485C42, 2,
+  0, // no vftv
+  0, //no vtt
+  ABISELECT(16,12), // object size
+  {0,0},0, // typeinfo_var
+  {0,0},0, // virtual function table var
+  2, // offset into main vftv pointed to by object[0]
+  {0,0},0, // virtual table table var
+  0, // n_initialized_bases
+  0, // has_virtual_bases
+  0, // has_class_type_fields
+  0, // alt-thunk-names
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S485C2_nt  : S485C3_nt {
+  ::S485C20_nt s485c2f0;
+  ::S485C6_nt s485c2f1;
+  void *s485c2f2[2];
+  ::S485C22_nt s485c2f3;
+  ::S485C24_nt s485c2f4;
+  int s485c2f5;
+  ::S485C25_nt s485c2f6;
+  int s485c2f7[4];
+  ::S485C6_nt s485c2f8[4];
+  ::S485C28_nt s485c2f9;
+  ::S485C29_nt s485c2f10;
+  int s485c2f11;
+  ::S485C34_nt s485c2f12;
+  ::S485C34_nt s485c2f13;
+  void *s485c2f14;
+  ::S485C29_nt s485c2f15;
+  ::S485C17 s485c2f16;
+  ::S485C42 s485c2f17;
+  unsigned int s485c2f18:1;
+  unsigned int s485c2f19:1;
+  unsigned int s485c2f20:1;
+  ::S485C30_nt s485c2f21;
+  ::S485C19_nt s485c2f22;
+  ::S485C19_nt s485c2f23;
+  ::S485C19_nt s485c2f24;
+  ::S485C19_nt s485c2f25;
+  ::S485C19_nt s485c2f26;
+  ::S485C19_nt s485c2f27;
+  ::S485C19_nt s485c2f28;
+  ::S485C19_nt s485c2f29;
+  ::S485C19_nt s485c2f30;
+  ::S485C19_nt s485c2f31;
+  ::S485C19_nt s485c2f32;
+  ::S485C19_nt s485c2f33;
+  ::S485C19_nt s485c2f34;
+  virtual  ~S485C2_nt(); // _ZN9S485C2_ntD1Ev
+  virtual void  v154(); // _ZN9S485C2_nt4v154Ev
+  virtual void  v155(); // _ZN9S485C2_nt4v155Ev
+  virtual void  v156(); // _ZN9S485C2_nt4v156Ev
+  virtual void  v157(); // _ZN9S485C2_nt4v157Ev
+  virtual void  v158(); // _ZN9S485C2_nt4v158Ev
+  virtual void  v159(); // _ZN9S485C2_nt4v159Ev
+  virtual void  v160(); // _ZN9S485C2_nt4v160Ev
+  virtual void  v161(); // _ZN9S485C2_nt4v161Ev
+  virtual void  v162(); // _ZN9S485C2_nt4v162Ev
+  virtual void  v163(); // _ZN9S485C2_nt4v163Ev
+  virtual void  v164(); // _ZN9S485C2_nt4v164Ev
+  virtual void  v165(); // _ZN9S485C2_nt4v165Ev
+  virtual void  v166(); // _ZN9S485C2_nt4v166Ev
+  virtual void  v167(); // _ZN9S485C2_nt4v167Ev
+  virtual void  v168(); // _ZN9S485C2_nt4v168Ev
+  virtual void  v169(); // _ZN9S485C2_nt4v169Ev
+  virtual void  v170(); // _ZN9S485C2_nt4v170Ev
+  virtual void  v171(); // _ZN9S485C2_nt4v171Ev
+  virtual void  v172(); // _ZN9S485C2_nt4v172Ev
+  virtual void  v173(); // _ZN9S485C2_nt4v173Ev
+  virtual void  v174(); // _ZN9S485C2_nt4v174Ev
+  virtual void  v175(); // _ZN9S485C2_nt4v175Ev
+  virtual void  v176(); // _ZN9S485C2_nt4v176Ev
+  virtual void  v177(); // _ZN9S485C2_nt4v177Ev
+  virtual void  v178(); // _ZN9S485C2_nt4v178Ev
+  virtual void  v179(); // _ZN9S485C2_nt4v179Ev
+  virtual void  v180(); // _ZN9S485C2_nt4v180Ev
+  virtual void  v181(); // _ZN9S485C2_nt4v181Ev
+  virtual void  v182(); // _ZN9S485C2_nt4v182Ev
+  virtual void  v183(); // _ZN9S485C2_nt4v183Ev
+  virtual void  v184(); // _ZN9S485C2_nt4v184Ev
+  virtual void  v185(); // _ZN9S485C2_nt4v185Ev
+  virtual void  v186(); // _ZN9S485C2_nt4v186Ev
+  virtual void  v187(); // _ZN9S485C2_nt4v187Ev
+  virtual void  v188(); // _ZN9S485C2_nt4v188Ev
+  virtual void  v189(); // _ZN9S485C2_nt4v189Ev
+  virtual void  v190(); // _ZN9S485C2_nt4v190Ev
+  virtual void  v191(); // _ZN9S485C2_nt4v191Ev
+  virtual void  v192(); // _ZN9S485C2_nt4v192Ev
+  virtual void  v193(); // _ZN9S485C2_nt4v193Ev
+  virtual void  v194(); // _ZN9S485C2_nt4v194Ev
+  virtual void  v195(); // _ZN9S485C2_nt4v195Ev
+  virtual void  v196(); // _ZN9S485C2_nt4v196Ev
+  virtual void  v197(); // _ZN9S485C2_nt4v197Ev
+  virtual void  v198(); // _ZN9S485C2_nt4v198Ev
+  virtual void  v199(); // _ZN9S485C2_nt4v199Ev
+  virtual void  v200(); // _ZN9S485C2_nt4v200Ev
+  virtual void  v201(); // _ZN9S485C2_nt4v201Ev
+  virtual void  v202(); // _ZN9S485C2_nt4v202Ev
+  virtual void  v203(); // _ZN9S485C2_nt4v203Ev
+  virtual void  v204(); // _ZN9S485C2_nt4v204Ev
+  virtual void  v205(); // _ZN9S485C2_nt4v205Ev
+  virtual void  v206(); // _ZN9S485C2_nt4v206Ev
+  virtual void  v207(); // _ZN9S485C2_nt4v207Ev
+  virtual void  v208(); // _ZN9S485C2_nt4v208Ev
+  virtual void  v209(); // _ZN9S485C2_nt4v209Ev
+  virtual void  v210(); // _ZN9S485C2_nt4v210Ev
+  virtual void  v211(); // _ZN9S485C2_nt4v211Ev
+  virtual void  v212(); // _ZN9S485C2_nt4v212Ev
+  virtual void  v213(); // _ZN9S485C2_nt4v213Ev
+  virtual void  v214(); // _ZN9S485C2_nt4v214Ev
+  virtual void  v215(); // _ZN9S485C2_nt4v215Ev
+  virtual void  v216(); // _ZN9S485C2_nt4v216Ev
+  virtual void  v217(); // _ZN9S485C2_nt4v217Ev
+  virtual void  v218(); // _ZN9S485C2_nt4v218Ev
+  virtual void  v219(); // _ZN9S485C2_nt4v219Ev
+  virtual void  v220(); // _ZN9S485C2_nt4v220Ev
+  virtual void  v221(); // _ZN9S485C2_nt4v221Ev
+  virtual void  v222(); // _ZN9S485C2_nt4v222Ev
+  S485C2_nt(); // tgen
+};
+//SIG(-1 S485C2_nt) C1{ BC2{ BC3{ BC4{ vd v70 v71 v72 v73 v74 v75 v76 v77 v78 v79 v80 v81 v82 v83 v84 v85 v86 v87 v88 v89 v90 v91 v92 v93 v94 v95 v96 v97 v98 v99 v100 v101 v102 v103 v104 v105 v106 v107 v108 v109 v110 v111 v112 v113 v114 v115 v116 v117 v118 v119 v120 v121 v122 v123 v124 v125 v126 v127 v128 v129 v130 v131 v132 v133 Fi FL Fp[4] Fi[2] Fp FC5{ m Fi[2]} Fp[2]} vd v134 v135} vd v136 v137 v138 v139 v140 v141 v142 v143 v144 v145 v146 v147 v148 v149 v150 v151 v152 v153 v154 v155 v156 v157 v158 v159 v160 v161 v162 v163 v164 v165 v166 v167 v168 v169 v170 v171 v172 v173 v174 v175 v176 v177 v178 v179 v180 v181 v182 v183 v184 v185 v186 v187 v188 v189 v190 v191 v192 v193 v194 v195 v196 v197 v198 v199 v200 v201 v202 v203 v204 v205 v206 v207 v208 v209 v210 v211 FC6{ m Fi[4] Fc[9]} Fi Fi:1 Fi:1 Fi:1 Fi:1 FC7{ BC8{ BC9{ m Fp Fi[2]}}} FC7 Fp FC10{ BC11{ BC9}} FC10 FC10 FC12{ BC13{ BC9}} Fc Fi Fp FC5 FC5 FC5 FC5 FC5 FC5 FC14{ m Fp FC5} FC14 FC14 FC14 FC14 FC14 FC14 FC14 FC14 FC1!
 4} vd v1 
 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 v13 v14 v15 v16 v17 v18 v19 v20 v21 v22 v23 v24 v25 v26 v27 v28 v29 v30 v31 v32 v33 v34 v35 v36 v37 v38 v39 v40 v41 v42 v43 v44 v45 v46 v47 v48 v49 v50 v51 v52 v53 v54 v55 v56 v57 v58 v59 v60 v61 v62 v63 v64 v65 v66 v67 v68 v69 FC15{ BC16{ m Fi[4]}} FC5 Fp[2] FC17{ m FC5 Fp FC15 Fp} FC18{ m Fp[8] Fc[4]} Fi FC19{ m Fp[5] FC20{ m Fi[4] Fc[4]} Fi:1 Fi:1 Fi Fc[8]} Fi[4] FC5[4] FC21{ m FC22{ m Fi[3]} FC23{ m} FC24{ BC25{ m Fi[2] Fc[2]} Fi} Fc} FC22 Fi FC26{ m FC27{ BC28{ m Fp[2]}} Fc FC29{ BC30{ BC31{ BC9}}} Fi FC5 FC5 Fp} FC26 Fp FC22 FC12 FC32{ BC33{ BC9}} Fi:1 Fi:1 Fi:1 FC23 FC14 FC14 FC14 FC14 FC14 FC14 FC14 FC14 FC14 FC14 FC14 FC14 FC14}
+
+
+ S485C2_nt ::~S485C2_nt(){ note_dtor("S485C2_nt", this);}
+void  S485C2_nt ::v154(){vfunc_called(this, "_ZN9S485C2_nt4v154Ev");}
+void  S485C2_nt ::v155(){vfunc_called(this, "_ZN9S485C2_nt4v155Ev");}
+void  S485C2_nt ::v156(){vfunc_called(this, "_ZN9S485C2_nt4v156Ev");}
+void  S485C2_nt ::v157(){vfunc_called(this, "_ZN9S485C2_nt4v157Ev");}
+void  S485C2_nt ::v158(){vfunc_called(this, "_ZN9S485C2_nt4v158Ev");}
+void  S485C2_nt ::v159(){vfunc_called(this, "_ZN9S485C2_nt4v159Ev");}
+void  S485C2_nt ::v160(){vfunc_called(this, "_ZN9S485C2_nt4v160Ev");}
+void  S485C2_nt ::v161(){vfunc_called(this, "_ZN9S485C2_nt4v161Ev");}
+void  S485C2_nt ::v162(){vfunc_called(this, "_ZN9S485C2_nt4v162Ev");}
+void  S485C2_nt ::v163(){vfunc_called(this, "_ZN9S485C2_nt4v163Ev");}
+void  S485C2_nt ::v164(){vfunc_called(this, "_ZN9S485C2_nt4v164Ev");}
+void  S485C2_nt ::v165(){vfunc_called(this, "_ZN9S485C2_nt4v165Ev");}
+void  S485C2_nt ::v166(){vfunc_called(this, "_ZN9S485C2_nt4v166Ev");}
+void  S485C2_nt ::v167(){vfunc_called(this, "_ZN9S485C2_nt4v167Ev");}
+void  S485C2_nt ::v168(){vfunc_called(this, "_ZN9S485C2_nt4v168Ev");}
+void  S485C2_nt ::v169(){vfunc_called(this, "_ZN9S485C2_nt4v169Ev");}
+void  S485C2_nt ::v170(){vfunc_called(this, "_ZN9S485C2_nt4v170Ev");}
+void  S485C2_nt ::v171(){vfunc_called(this, "_ZN9S485C2_nt4v171Ev");}
+void  S485C2_nt ::v172(){vfunc_called(this, "_ZN9S485C2_nt4v172Ev");}
+void  S485C2_nt ::v173(){vfunc_called(this, "_ZN9S485C2_nt4v173Ev");}
+void  S485C2_nt ::v174(){vfunc_called(this, "_ZN9S485C2_nt4v174Ev");}
+void  S485C2_nt ::v175(){vfunc_called(this, "_ZN9S485C2_nt4v175Ev");}
+void  S485C2_nt ::v176(){vfunc_called(this, "_ZN9S485C2_nt4v176Ev");}
+void  S485C2_nt ::v177(){vfunc_called(this, "_ZN9S485C2_nt4v177Ev");}
+void  S485C2_nt ::v178(){vfunc_called(this, "_ZN9S485C2_nt4v178Ev");}
+void  S485C2_nt ::v179(){vfunc_called(this, "_ZN9S485C2_nt4v179Ev");}
+void  S485C2_nt ::v180(){vfunc_called(this, "_ZN9S485C2_nt4v180Ev");}
+void  S485C2_nt ::v181(){vfunc_called(this, "_ZN9S485C2_nt4v181Ev");}
+void  S485C2_nt ::v182(){vfunc_called(this, "_ZN9S485C2_nt4v182Ev");}
+void  S485C2_nt ::v183(){vfunc_called(this, "_ZN9S485C2_nt4v183Ev");}
+void  S485C2_nt ::v184(){vfunc_called(this, "_ZN9S485C2_nt4v184Ev");}
+void  S485C2_nt ::v185(){vfunc_called(this, "_ZN9S485C2_nt4v185Ev");}
+void  S485C2_nt ::v186(){vfunc_called(this, "_ZN9S485C2_nt4v186Ev");}
+void  S485C2_nt ::v187(){vfunc_called(this, "_ZN9S485C2_nt4v187Ev");}
+void  S485C2_nt ::v188(){vfunc_called(this, "_ZN9S485C2_nt4v188Ev");}
+void  S485C2_nt ::v189(){vfunc_called(this, "_ZN9S485C2_nt4v189Ev");}
+void  S485C2_nt ::v190(){vfunc_called(this, "_ZN9S485C2_nt4v190Ev");}
+void  S485C2_nt ::v191(){vfunc_called(this, "_ZN9S485C2_nt4v191Ev");}
+void  S485C2_nt ::v192(){vfunc_called(this, "_ZN9S485C2_nt4v192Ev");}
+void  S485C2_nt ::v193(){vfunc_called(this, "_ZN9S485C2_nt4v193Ev");}
+void  S485C2_nt ::v194(){vfunc_called(this, "_ZN9S485C2_nt4v194Ev");}
+void  S485C2_nt ::v195(){vfunc_called(this, "_ZN9S485C2_nt4v195Ev");}
+void  S485C2_nt ::v196(){vfunc_called(this, "_ZN9S485C2_nt4v196Ev");}
+void  S485C2_nt ::v197(){vfunc_called(this, "_ZN9S485C2_nt4v197Ev");}
+void  S485C2_nt ::v198(){vfunc_called(this, "_ZN9S485C2_nt4v198Ev");}
+void  S485C2_nt ::v199(){vfunc_called(this, "_ZN9S485C2_nt4v199Ev");}
+void  S485C2_nt ::v200(){vfunc_called(this, "_ZN9S485C2_nt4v200Ev");}
+void  S485C2_nt ::v201(){vfunc_called(this, "_ZN9S485C2_nt4v201Ev");}
+void  S485C2_nt ::v202(){vfunc_called(this, "_ZN9S485C2_nt4v202Ev");}
+void  S485C2_nt ::v203(){vfunc_called(this, "_ZN9S485C2_nt4v203Ev");}
+void  S485C2_nt ::v204(){vfunc_called(this, "_ZN9S485C2_nt4v204Ev");}
+void  S485C2_nt ::v205(){vfunc_called(this, "_ZN9S485C2_nt4v205Ev");}
+void  S485C2_nt ::v206(){vfunc_called(this, "_ZN9S485C2_nt4v206Ev");}
+void  S485C2_nt ::v207(){vfunc_called(this, "_ZN9S485C2_nt4v207Ev");}
+void  S485C2_nt ::v208(){vfunc_called(this, "_ZN9S485C2_nt4v208Ev");}
+void  S485C2_nt ::v209(){vfunc_called(this, "_ZN9S485C2_nt4v209Ev");}
+void  S485C2_nt ::v210(){vfunc_called(this, "_ZN9S485C2_nt4v210Ev");}
+void  S485C2_nt ::v211(){vfunc_called(this, "_ZN9S485C2_nt4v211Ev");}
+void  S485C2_nt ::v212(){vfunc_called(this, "_ZN9S485C2_nt4v212Ev");}
+void  S485C2_nt ::v213(){vfunc_called(this, "_ZN9S485C2_nt4v213Ev");}
+void  S485C2_nt ::v214(){vfunc_called(this, "_ZN9S485C2_nt4v214Ev");}
+void  S485C2_nt ::v215(){vfunc_called(this, "_ZN9S485C2_nt4v215Ev");}
+void  S485C2_nt ::v216(){vfunc_called(this, "_ZN9S485C2_nt4v216Ev");}
+void  S485C2_nt ::v217(){vfunc_called(this, "_ZN9S485C2_nt4v217Ev");}
+void  S485C2_nt ::v218(){vfunc_called(this, "_ZN9S485C2_nt4v218Ev");}
+void  S485C2_nt ::v219(){vfunc_called(this, "_ZN9S485C2_nt4v219Ev");}
+void  S485C2_nt ::v220(){vfunc_called(this, "_ZN9S485C2_nt4v220Ev");}
+void  S485C2_nt ::v221(){vfunc_called(this, "_ZN9S485C2_nt4v221Ev");}
+void  S485C2_nt ::v222(){vfunc_called(this, "_ZN9S485C2_nt4v222Ev");}
+S485C2_nt ::S485C2_nt(){ note_ctor("S485C2_nt", this);} // tgen
+
+//skip512 S485C2_nt
+
+#else // __cplusplus
+
+extern void _ZN9S485C2_ntC1Ev();
+extern void _ZN9S485C2_ntD1Ev();
+Name_Map name_map_S485C2_nt[] = {
+  NSPAIR(_ZN9S485C2_ntC1Ev),
+  NSPAIR(_ZN9S485C2_ntD1Ev),
+  {0,0}
+};
+extern Class_Descriptor cd_S485C5_nt;
+extern VTBL_ENTRY _ZTI9S485C5_nt[];
+extern  VTBL_ENTRY _ZTV9S485C5_nt[];
+extern Class_Descriptor cd_S485C4_nt;
+extern VTBL_ENTRY _ZTI9S485C4_nt[];
+extern  VTBL_ENTRY _ZTV9S485C4_nt[];
+extern Class_Descriptor cd_S485C3_nt;
+extern VTBL_ENTRY _ZTI9S485C3_nt[];
+extern  VTBL_ENTRY _ZTV9S485C3_nt[];
+static Base_Class bases_S485C2_nt[] = {
+  // ofst, vfto, nneg, vtt_idx, base_vtt_idx, init_seq, direct, virtual
+  {&cd_S485C5_nt,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    1, //init_seq
+    1, //immediately_derived
+  0, 0},
+  {&cd_S485C4_nt,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    2, //init_seq
+    2, //immediately_derived
+  0, 0},
+  {&cd_S485C3_nt,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    3, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {0}};
+extern VTBL_ENTRY _ZTI9S485C2_nt[];
+extern void _ZN9S485C2_ntD1Ev();
+extern void _ZN9S485C2_ntD0Ev();
+extern void _ZN9S485C5_nt3v12Ev();
+extern void _ZN9S485C5_nt3v13Ev();
+extern void _ZN9S485C5_nt3v14Ev();
+extern void _ZN9S485C5_nt3v15Ev();
+extern void _ZN9S485C5_nt3v16Ev();
+extern void _ZN9S485C5_nt3v17Ev();
+extern void _ZN9S485C5_nt3v18Ev();
+extern void _ZN9S485C5_nt3v19Ev();
+extern void _ZN9S485C5_nt3v20Ev();
+extern void _ZN9S485C5_nt3v21Ev();
+extern void _ZN9S485C5_nt3v22Ev();
+extern void _ZN9S485C5_nt3v23Ev();
+extern void _ZN9S485C5_nt3v24Ev();
+extern void _ZN9S485C5_nt3v25Ev();
+extern void _ZN9S485C5_nt3v26Ev();
+extern void _ZN9S485C5_nt3v27Ev();
+extern void _ZN9S485C5_nt3v28Ev();
+extern void _ZN9S485C5_nt3v29Ev();
+extern void _ZN9S485C5_nt3v30Ev();
+extern void _ZN9S485C5_nt3v31Ev();
+extern void _ZN9S485C5_nt3v32Ev();
+extern void _ZN9S485C5_nt3v33Ev();
+extern void _ZN9S485C5_nt3v34Ev();
+extern void _ZN9S485C5_nt3v35Ev();
+extern void _ZN9S485C5_nt3v36Ev();
+extern void _ZN9S485C5_nt3v37Ev();
+extern void _ZN9S485C5_nt3v38Ev();
+extern void _ZN9S485C5_nt3v39Ev();
+extern void _ZN9S485C5_nt3v40Ev();
+extern void _ZN9S485C5_nt3v41Ev();
+extern void _ZN9S485C5_nt3v42Ev();
+extern void _ZN9S485C5_nt3v43Ev();
+extern void _ZN9S485C5_nt3v44Ev();
+extern void _ZN9S485C5_nt3v45Ev();
+extern void _ZN9S485C5_nt3v46Ev();
+extern void _ZN9S485C5_nt3v47Ev();
+extern void _ZN9S485C5_nt3v48Ev();
+extern void _ZN9S485C5_nt3v49Ev();
+extern void _ZN9S485C5_nt3v50Ev();
+extern void _ZN9S485C5_nt3v51Ev();
+extern void _ZN9S485C5_nt3v52Ev();
+extern void _ZN9S485C5_nt3v53Ev();
+extern void _ZN9S485C5_nt3v54Ev();
+extern void _ZN9S485C5_nt3v55Ev();
+extern void _ZN9S485C5_nt3v56Ev();
+extern void _ZN9S485C5_nt3v57Ev();
+extern void _ZN9S485C5_nt3v58Ev();
+extern void _ZN9S485C5_nt3v59Ev();
+extern void _ZN9S485C5_nt3v60Ev();
+extern void _ZN9S485C5_nt3v61Ev();
+extern void _ZN9S485C5_nt3v62Ev();
+extern void _ZN9S485C5_nt3v63Ev();
+extern void _ZN9S485C5_nt3v64Ev();
+extern void _ZN9S485C5_nt3v65Ev();
+extern void _ZN9S485C5_nt3v66Ev();
+extern void _ZN9S485C5_nt3v67Ev();
+extern void _ZN9S485C5_nt3v68Ev();
+extern void _ZN9S485C5_nt3v69Ev();
+extern void _ZN9S485C5_nt3v70Ev();
+extern void _ZN9S485C5_nt3v71Ev();
+extern void _ZN9S485C5_nt3v72Ev();
+extern void _ZN9S485C5_nt3v73Ev();
+extern void _ZN9S485C5_nt3v74Ev();
+extern void _ZN9S485C5_nt3v75Ev();
+extern void _ZN9S485C4_nt3v76Ev();
+extern void _ZN9S485C4_nt3v77Ev();
+extern void _ZN9S485C3_nt3v78Ev();
+extern void _ZN9S485C3_nt3v79Ev();
+extern void _ZN9S485C3_nt3v80Ev();
+extern void _ZN9S485C3_nt3v81Ev();
+extern void _ZN9S485C3_nt3v82Ev();
+extern void _ZN9S485C3_nt3v83Ev();
+extern void _ZN9S485C3_nt3v84Ev();
+extern void _ZN9S485C3_nt3v85Ev();
+extern void _ZN9S485C3_nt3v86Ev();
+extern void _ZN9S485C3_nt3v87Ev();
+extern void _ZN9S485C3_nt3v88Ev();
+extern void _ZN9S485C3_nt3v89Ev();
+extern void _ZN9S485C3_nt3v90Ev();
+extern void _ZN9S485C3_nt3v91Ev();
+extern void _ZN9S485C3_nt3v92Ev();
+extern void _ZN9S485C3_nt3v93Ev();
+extern void _ZN9S485C3_nt3v94Ev();
+extern void _ZN9S485C3_nt3v95Ev();
+extern void _ZN9S485C3_nt3v96Ev();
+extern void _ZN9S485C3_nt3v97Ev();
+extern void _ZN9S485C3_nt3v98Ev();
+extern void _ZN9S485C3_nt3v99Ev();
+extern void _ZN9S485C3_nt4v100Ev();
+extern void _ZN9S485C3_nt4v101Ev();
+extern void _ZN9S485C3_nt4v102Ev();
+extern void _ZN9S485C3_nt4v103Ev();
+extern void _ZN9S485C3_nt4v104Ev();
+extern void _ZN9S485C3_nt4v105Ev();
+extern void _ZN9S485C3_nt4v106Ev();
+extern void _ZN9S485C3_nt4v107Ev();
+extern void _ZN9S485C3_nt4v108Ev();
+extern void _ZN9S485C3_nt4v109Ev();
+extern void _ZN9S485C3_nt4v110Ev();
+extern void _ZN9S485C3_nt4v111Ev();
+extern void _ZN9S485C3_nt4v112Ev();
+extern void _ZN9S485C3_nt4v113Ev();
+extern void _ZN9S485C3_nt4v114Ev();
+extern void _ZN9S485C3_nt4v115Ev();
+extern void _ZN9S485C3_nt4v116Ev();
+extern void _ZN9S485C3_nt4v117Ev();
+extern void _ZN9S485C3_nt4v118Ev();
+extern void _ZN9S485C3_nt4v119Ev();
+extern void _ZN9S485C3_nt4v120Ev();
+extern void _ZN9S485C3_nt4v121Ev();
+extern void _ZN9S485C3_nt4v122Ev();
+extern void _ZN9S485C3_nt4v123Ev();
+extern void _ZN9S485C3_nt4v124Ev();
+extern void _ZN9S485C3_nt4v125Ev();
+extern void _ZN9S485C3_nt4v126Ev();
+extern void _ZN9S485C3_nt4v127Ev();
+extern void _ZN9S485C3_nt4v128Ev();
+extern void _ZN9S485C3_nt4v129Ev();
+extern void _ZN9S485C3_nt4v130Ev();
+extern void _ZN9S485C3_nt4v131Ev();
+extern void _ZN9S485C3_nt4v132Ev();
+extern void _ZN9S485C3_nt4v133Ev();
+extern void _ZN9S485C3_nt4v134Ev();
+extern void _ZN9S485C3_nt4v135Ev();
+extern void _ZN9S485C3_nt4v136Ev();
+extern void _ZN9S485C3_nt4v137Ev();
+extern void _ZN9S485C3_nt4v138Ev();
+extern void _ZN9S485C3_nt4v139Ev();
+extern void _ZN9S485C3_nt4v140Ev();
+extern void _ZN9S485C3_nt4v141Ev();
+extern void _ZN9S485C3_nt4v142Ev();
+extern void _ZN9S485C3_nt4v143Ev();
+extern void _ZN9S485C3_nt4v144Ev();
+extern void _ZN9S485C3_nt4v145Ev();
+extern void _ZN9S485C3_nt4v146Ev();
+extern void _ZN9S485C3_nt4v147Ev();
+extern void _ZN9S485C3_nt4v148Ev();
+extern void _ZN9S485C3_nt4v149Ev();
+extern void _ZN9S485C3_nt4v150Ev();
+extern void _ZN9S485C3_nt4v151Ev();
+extern void _ZN9S485C3_nt4v152Ev();
+extern void _ZN9S485C3_nt4v153Ev();
+extern void _ZN9S485C2_nt4v154Ev();
+extern void _ZN9S485C2_nt4v155Ev();
+extern void _ZN9S485C2_nt4v156Ev();
+extern void _ZN9S485C2_nt4v157Ev();
+extern void _ZN9S485C2_nt4v158Ev();
+extern void _ZN9S485C2_nt4v159Ev();
+extern void _ZN9S485C2_nt4v160Ev();
+extern void _ZN9S485C2_nt4v161Ev();
+extern void _ZN9S485C2_nt4v162Ev();
+extern void _ZN9S485C2_nt4v163Ev();
+extern void _ZN9S485C2_nt4v164Ev();
+extern void _ZN9S485C2_nt4v165Ev();
+extern void _ZN9S485C2_nt4v166Ev();
+extern void _ZN9S485C2_nt4v167Ev();
+extern void _ZN9S485C2_nt4v168Ev();
+extern void _ZN9S485C2_nt4v169Ev();
+extern void _ZN9S485C2_nt4v170Ev();
+extern void _ZN9S485C2_nt4v171Ev();
+extern void _ZN9S485C2_nt4v172Ev();
+extern void _ZN9S485C2_nt4v173Ev();
+extern void _ZN9S485C2_nt4v174Ev();
+extern void _ZN9S485C2_nt4v175Ev();
+extern void _ZN9S485C2_nt4v176Ev();
+extern void _ZN9S485C2_nt4v177Ev();
+extern void _ZN9S485C2_nt4v178Ev();
+extern void _ZN9S485C2_nt4v179Ev();
+extern void _ZN9S485C2_nt4v180Ev();
+extern void _ZN9S485C2_nt4v181Ev();
+extern void _ZN9S485C2_nt4v182Ev();
+extern void _ZN9S485C2_nt4v183Ev();
+extern void _ZN9S485C2_nt4v184Ev();
+extern void _ZN9S485C2_nt4v185Ev();
+extern void _ZN9S485C2_nt4v186Ev();
+extern void _ZN9S485C2_nt4v187Ev();
+extern void _ZN9S485C2_nt4v188Ev();
+extern void _ZN9S485C2_nt4v189Ev();
+extern void _ZN9S485C2_nt4v190Ev();
+extern void _ZN9S485C2_nt4v191Ev();
+extern void _ZN9S485C2_nt4v192Ev();
+extern void _ZN9S485C2_nt4v193Ev();
+extern void _ZN9S485C2_nt4v194Ev();
+extern void _ZN9S485C2_nt4v195Ev();
+extern void _ZN9S485C2_nt4v196Ev();
+extern void _ZN9S485C2_nt4v197Ev();
+extern void _ZN9S485C2_nt4v198Ev();
+extern void _ZN9S485C2_nt4v199Ev();
+extern void _ZN9S485C2_nt4v200Ev();
+extern void _ZN9S485C2_nt4v201Ev();
+extern void _ZN9S485C2_nt4v202Ev();
+extern void _ZN9S485C2_nt4v203Ev();
+extern void _ZN9S485C2_nt4v204Ev();
+extern void _ZN9S485C2_nt4v205Ev();
+extern void _ZN9S485C2_nt4v206Ev();
+extern void _ZN9S485C2_nt4v207Ev();
+extern void _ZN9S485C2_nt4v208Ev();
+extern void _ZN9S485C2_nt4v209Ev();
+extern void _ZN9S485C2_nt4v210Ev();
+extern void _ZN9S485C2_nt4v211Ev();
+extern void _ZN9S485C2_nt4v212Ev();
+extern void _ZN9S485C2_nt4v213Ev();
+extern void _ZN9S485C2_nt4v214Ev();
+extern void _ZN9S485C2_nt4v215Ev();
+extern void _ZN9S485C2_nt4v216Ev();
+extern void _ZN9S485C2_nt4v217Ev();
+extern void _ZN9S485C2_nt4v218Ev();
+extern void _ZN9S485C2_nt4v219Ev();
+extern void _ZN9S485C2_nt4v220Ev();
+extern void _ZN9S485C2_nt4v221Ev();
+extern void _ZN9S485C2_nt4v222Ev();
+static  VTBL_ENTRY vtc_S485C2_nt[] = {
+  0,
+  (VTBL_ENTRY)&(_ZTI9S485C2_nt[0]),
+  (VTBL_ENTRY)&_ZN9S485C2_ntD1Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_ntD0Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v12Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v13Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v14Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v15Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v16Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v17Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v18Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v19Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v20Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v21Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v22Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v23Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v24Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v25Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v26Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v27Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v28Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v29Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v30Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v31Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v32Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v33Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v34Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v35Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v36Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v37Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v38Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v39Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v40Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v41Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v42Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v43Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v44Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v45Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v46Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v47Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v48Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v49Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v50Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v51Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v52Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v53Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v54Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v55Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v56Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v57Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v58Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v59Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v60Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v61Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v62Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v63Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v64Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v65Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v66Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v67Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v68Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v69Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v70Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v71Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v72Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v73Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v74Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v75Ev,
+  (VTBL_ENTRY)&_ZN9S485C4_nt3v76Ev,
+  (VTBL_ENTRY)&_ZN9S485C4_nt3v77Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt3v78Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt3v79Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt3v80Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt3v81Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt3v82Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt3v83Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt3v84Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt3v85Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt3v86Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt3v87Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt3v88Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt3v89Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt3v90Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt3v91Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt3v92Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt3v93Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt3v94Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt3v95Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt3v96Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt3v97Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt3v98Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt3v99Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v100Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v101Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v102Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v103Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v104Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v105Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v106Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v107Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v108Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v109Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v110Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v111Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v112Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v113Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v114Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v115Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v116Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v117Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v118Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v119Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v120Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v121Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v122Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v123Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v124Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v125Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v126Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v127Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v128Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v129Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v130Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v131Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v132Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v133Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v134Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v135Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v136Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v137Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v138Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v139Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v140Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v141Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v142Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v143Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v144Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v145Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v146Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v147Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v148Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v149Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v150Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v151Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v152Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v153Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v154Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v155Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v156Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v157Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v158Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v159Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v160Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v161Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v162Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v163Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v164Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v165Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v166Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v167Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v168Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v169Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v170Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v171Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v172Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v173Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v174Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v175Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v176Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v177Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v178Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v179Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v180Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v181Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v182Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v183Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v184Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v185Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v186Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v187Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v188Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v189Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v190Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v191Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v192Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v193Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v194Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v195Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v196Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v197Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v198Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v199Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v200Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v201Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v202Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v203Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v204Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v205Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v206Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v207Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v208Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v209Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v210Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v211Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v212Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v213Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v214Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v215Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v216Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v217Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v218Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v219Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v220Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v221Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v222Ev,
+};
+extern VTBL_ENTRY _ZTI9S485C2_nt[];
+VTBL_ENTRY *P__ZTI9S485C2_nt = _ZTI9S485C2_nt; 
+extern  VTBL_ENTRY _ZTV9S485C2_nt[];
+Class_Descriptor cd_S485C2_nt = {  "S485C2_nt", // class name
+  bases_S485C2_nt, 3,
+  &(vtc_S485C2_nt[0]), // expected_vtbl_contents
+  0, //no vtt
+  ABISELECT(1224,908), // object size
+  NSPAIRA(_ZTI9S485C2_nt),ABISELECT(24,12), //typeinfo_var
+  NSPAIRA(_ZTV9S485C2_nt),215, //virtual function table var
+  2, // offset into main vftv pointed to by object[0]
+  {0,0},0, // virtual table table var
+  3, // n_initialized_bases
+  0, // has_virtual_bases
+  1, // has_class_type_fields
+  0, // alt-thunk-names
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S485C1  : S485C2_nt {
+  int s485c1f0[2];
+  void *s485c1f1;
+  int s485c1f2;
+  virtual  ~S485C1(); // _ZN6S485C1D1Ev
+  virtual void  v1(); // _ZN6S485C12v1Ev
+  virtual void  v2(); // _ZN6S485C12v2Ev
+  virtual void  v3(); // _ZN6S485C12v3Ev
+  virtual void  v4(); // _ZN6S485C12v4Ev
+  virtual void  v5(); // _ZN6S485C12v5Ev
+  virtual void  v6(); // _ZN6S485C12v6Ev
+  virtual void  v7(); // _ZN6S485C12v7Ev
+  virtual void  v8(); // _ZN6S485C12v8Ev
+  virtual void  v9(); // _ZN6S485C12v9Ev
+  virtual void  v10(); // _ZN6S485C13v10Ev
+  virtual void  v11(); // _ZN6S485C13v11Ev
+  S485C1(); // tgen
+};
+//SIG(1 S485C1) C1{ BC2{ BC3{ BC4{ BC5{ vd v12 v13 v14 v15 v16 v17 v18 v19 v20 v21 v22 v23 v24 v25 v26 v27 v28 v29 v30 v31 v32 v33 v34 v35 v36 v37 v38 v39 v40 v41 v42 v43 v44 v45 v46 v47 v48 v49 v50 v51 v52 v53 v54 v55 v56 v57 v58 v59 v60 v61 v62 v63 v64 v65 v66 v67 v68 v69 v70 v71 v72 v73 v74 v75 Fi FL Fp[4] Fi[2] Fp FC6{ m Fi[2]} Fp[2]} vd v76 v77} vd v78 v79 v80 v81 v82 v83 v84 v85 v86 v87 v88 v89 v90 v91 v92 v93 v94 v95 v96 v97 v98 v99 v100 v101 v102 v103 v104 v105 v106 v107 v108 v109 v110 v111 v112 v113 v114 v115 v116 v117 v118 v119 v120 v121 v122 v123 v124 v125 v126 v127 v128 v129 v130 v131 v132 v133 v134 v135 v136 v137 v138 v139 v140 v141 v142 v143 v144 v145 v146 v147 v148 v149 v150 v151 v152 v153 FC7{ m Fi[4] Fc[9]} Fi Fi:1 Fi:1 Fi:1 Fi:1 FC8{ BC9{ BC10{ m Fp Fi[2]}}} FC8 Fp FC11{ BC12{ BC10}} FC11 FC11 FC13{ BC14{ BC10}} Fc Fi Fp FC6 FC6 FC6 FC6 FC6 FC6 FC15{ m Fp FC6} FC15 FC15 FC15 FC15 FC15 FC15 FC15 FC15 FC15} vd v154 v155 v156 v157 v158 v159 v160 v161 v162 v16!
 3 v164 v1
 65 v166 v167 v168 v169 v170 v171 v172 v173 v174 v175 v176 v177 v178 v179 v180 v181 v182 v183 v184 v185 v186 v187 v188 v189 v190 v191 v192 v193 v194 v195 v196 v197 v198 v199 v200 v201 v202 v203 v204 v205 v206 v207 v208 v209 v210 v211 v212 v213 v214 v215 v216 v217 v218 v219 v220 v221 v222 FC16{ BC17{ m Fi[4]}} FC6 Fp[2] FC18{ m FC6 Fp FC16 Fp} FC19{ m Fp[8] Fc[4]} Fi FC20{ m Fp[5] FC21{ m Fi[4] Fc[4]} Fi:1 Fi:1 Fi Fc[8]} Fi[4] FC6[4] FC22{ m FC23{ m Fi[3]} FC24{ m} FC25{ BC26{ m Fi[2] Fc[2]} Fi} Fc} FC23 Fi FC27{ m FC28{ BC29{ m Fp[2]}} Fc FC30{ BC31{ BC32{ BC10}}} Fi FC6 FC6 Fp} FC27 Fp FC23 FC13 FC33{ BC34{ BC10}} Fi:1 Fi:1 Fi:1 FC24 FC15 FC15 FC15 FC15 FC15 FC15 FC15 FC15 FC15 FC15 FC15 FC15 FC15} vd v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 Fi[2] Fp Fi}
+
+
+ S485C1 ::~S485C1(){ note_dtor("S485C1", this);}
+void  S485C1 ::v1(){vfunc_called(this, "_ZN6S485C12v1Ev");}
+void  S485C1 ::v2(){vfunc_called(this, "_ZN6S485C12v2Ev");}
+void  S485C1 ::v3(){vfunc_called(this, "_ZN6S485C12v3Ev");}
+void  S485C1 ::v4(){vfunc_called(this, "_ZN6S485C12v4Ev");}
+void  S485C1 ::v5(){vfunc_called(this, "_ZN6S485C12v5Ev");}
+void  S485C1 ::v6(){vfunc_called(this, "_ZN6S485C12v6Ev");}
+void  S485C1 ::v7(){vfunc_called(this, "_ZN6S485C12v7Ev");}
+void  S485C1 ::v8(){vfunc_called(this, "_ZN6S485C12v8Ev");}
+void  S485C1 ::v9(){vfunc_called(this, "_ZN6S485C12v9Ev");}
+void  S485C1 ::v10(){vfunc_called(this, "_ZN6S485C13v10Ev");}
+void  S485C1 ::v11(){vfunc_called(this, "_ZN6S485C13v11Ev");}
+S485C1 ::S485C1(){ note_ctor("S485C1", this);} // tgen
+
+static void Test_S485C1()
+{
+  extern Class_Descriptor cd_S485C1;
+  void *lvp;
+  {
+    ABISELECT(double,int) buf[ABISELECT(157,232)];
+    init_test(&cd_S485C1, buf);
+    S485C1 *dp, &lv = *(dp=new (buf) S485C1());
+    lvp = (void*)&lv;
+    check2(sizeof(lv), ABISELECT(1248,924), "sizeof(S485C1)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S485C1)");
+    check_base_class_offset(lv, (S485C5_nt*)(S485C4_nt*)(S485C3_nt*)(S485C2_nt*), 0, "S485C1");
+    check_base_class_offset(lv, (S485C4_nt*)(S485C3_nt*)(S485C2_nt*), 0, "S485C1");
+    check_base_class_offset(lv, (S485C3_nt*)(S485C2_nt*), 0, "S485C1");
+    check_base_class_offset(lv, (S485C2_nt*), 0, "S485C1");
+    check_field_offset(lv, s485c1f0, ABISELECT(1224,908), "S485C1.s485c1f0");
+    check_field_offset(lv, s485c1f1, ABISELECT(1232,916), "S485C1.s485c1f1");
+    check_field_offset(lv, s485c1f2, ABISELECT(1240,920), "S485C1.s485c1f2");
+    test_class_info(&lv, &cd_S485C1);
+    dp->~S485C1();
+  }
+  Check_Ctor_Dtor_Calls(lvp);
+}
+static Arrange_To_Call_Me vS485C1(Test_S485C1, "S485C1", ABISELECT(1248,924));
+
+#else // __cplusplus
+
+extern void _ZN6S485C1C1Ev();
+extern void _ZN6S485C1D1Ev();
+Name_Map name_map_S485C1[] = {
+  NSPAIR(_ZN6S485C1C1Ev),
+  NSPAIR(_ZN6S485C1D1Ev),
+  {0,0}
+};
+extern Class_Descriptor cd_S485C5_nt;
+extern VTBL_ENTRY _ZTI9S485C5_nt[];
+extern  VTBL_ENTRY _ZTV9S485C5_nt[];
+extern Class_Descriptor cd_S485C4_nt;
+extern VTBL_ENTRY _ZTI9S485C4_nt[];
+extern  VTBL_ENTRY _ZTV9S485C4_nt[];
+extern Class_Descriptor cd_S485C3_nt;
+extern VTBL_ENTRY _ZTI9S485C3_nt[];
+extern  VTBL_ENTRY _ZTV9S485C3_nt[];
+extern Class_Descriptor cd_S485C2_nt;
+extern VTBL_ENTRY _ZTI9S485C2_nt[];
+extern  VTBL_ENTRY _ZTV9S485C2_nt[];
+static Base_Class bases_S485C1[] = {
+  // ofst, vfto, nneg, vtt_idx, base_vtt_idx, init_seq, direct, virtual
+  {&cd_S485C5_nt,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    1, //init_seq
+    1, //immediately_derived
+  0, 0},
+  {&cd_S485C4_nt,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    2, //init_seq
+    2, //immediately_derived
+  0, 0},
+  {&cd_S485C3_nt,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    3, //init_seq
+    3, //immediately_derived
+  0, 0},
+  {&cd_S485C2_nt,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    4, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {0}};
+extern VTBL_ENTRY _ZTI6S485C1[];
+extern void _ZN6S485C1D1Ev();
+extern void _ZN6S485C1D0Ev();
+extern void _ZN9S485C5_nt3v12Ev();
+extern void _ZN9S485C5_nt3v13Ev();
+extern void _ZN9S485C5_nt3v14Ev();
+extern void _ZN9S485C5_nt3v15Ev();
+extern void _ZN9S485C5_nt3v16Ev();
+extern void _ZN9S485C5_nt3v17Ev();
+extern void _ZN9S485C5_nt3v18Ev();
+extern void _ZN9S485C5_nt3v19Ev();
+extern void _ZN9S485C5_nt3v20Ev();
+extern void _ZN9S485C5_nt3v21Ev();
+extern void _ZN9S485C5_nt3v22Ev();
+extern void _ZN9S485C5_nt3v23Ev();
+extern void _ZN9S485C5_nt3v24Ev();
+extern void _ZN9S485C5_nt3v25Ev();
+extern void _ZN9S485C5_nt3v26Ev();
+extern void _ZN9S485C5_nt3v27Ev();
+extern void _ZN9S485C5_nt3v28Ev();
+extern void _ZN9S485C5_nt3v29Ev();
+extern void _ZN9S485C5_nt3v30Ev();
+extern void _ZN9S485C5_nt3v31Ev();
+extern void _ZN9S485C5_nt3v32Ev();
+extern void _ZN9S485C5_nt3v33Ev();
+extern void _ZN9S485C5_nt3v34Ev();
+extern void _ZN9S485C5_nt3v35Ev();
+extern void _ZN9S485C5_nt3v36Ev();
+extern void _ZN9S485C5_nt3v37Ev();
+extern void _ZN9S485C5_nt3v38Ev();
+extern void _ZN9S485C5_nt3v39Ev();
+extern void _ZN9S485C5_nt3v40Ev();
+extern void _ZN9S485C5_nt3v41Ev();
+extern void _ZN9S485C5_nt3v42Ev();
+extern void _ZN9S485C5_nt3v43Ev();
+extern void _ZN9S485C5_nt3v44Ev();
+extern void _ZN9S485C5_nt3v45Ev();
+extern void _ZN9S485C5_nt3v46Ev();
+extern void _ZN9S485C5_nt3v47Ev();
+extern void _ZN9S485C5_nt3v48Ev();
+extern void _ZN9S485C5_nt3v49Ev();
+extern void _ZN9S485C5_nt3v50Ev();
+extern void _ZN9S485C5_nt3v51Ev();
+extern void _ZN9S485C5_nt3v52Ev();
+extern void _ZN9S485C5_nt3v53Ev();
+extern void _ZN9S485C5_nt3v54Ev();
+extern void _ZN9S485C5_nt3v55Ev();
+extern void _ZN9S485C5_nt3v56Ev();
+extern void _ZN9S485C5_nt3v57Ev();
+extern void _ZN9S485C5_nt3v58Ev();
+extern void _ZN9S485C5_nt3v59Ev();
+extern void _ZN9S485C5_nt3v60Ev();
+extern void _ZN9S485C5_nt3v61Ev();
+extern void _ZN9S485C5_nt3v62Ev();
+extern void _ZN9S485C5_nt3v63Ev();
+extern void _ZN9S485C5_nt3v64Ev();
+extern void _ZN9S485C5_nt3v65Ev();
+extern void _ZN9S485C5_nt3v66Ev();
+extern void _ZN9S485C5_nt3v67Ev();
+extern void _ZN9S485C5_nt3v68Ev();
+extern void _ZN9S485C5_nt3v69Ev();
+extern void _ZN9S485C5_nt3v70Ev();
+extern void _ZN9S485C5_nt3v71Ev();
+extern void _ZN9S485C5_nt3v72Ev();
+extern void _ZN9S485C5_nt3v73Ev();
+extern void _ZN9S485C5_nt3v74Ev();
+extern void _ZN9S485C5_nt3v75Ev();
+extern void _ZN9S485C4_nt3v76Ev();
+extern void _ZN9S485C4_nt3v77Ev();
+extern void _ZN9S485C3_nt3v78Ev();
+extern void _ZN9S485C3_nt3v79Ev();
+extern void _ZN9S485C3_nt3v80Ev();
+extern void _ZN9S485C3_nt3v81Ev();
+extern void _ZN9S485C3_nt3v82Ev();
+extern void _ZN9S485C3_nt3v83Ev();
+extern void _ZN9S485C3_nt3v84Ev();
+extern void _ZN9S485C3_nt3v85Ev();
+extern void _ZN9S485C3_nt3v86Ev();
+extern void _ZN9S485C3_nt3v87Ev();
+extern void _ZN9S485C3_nt3v88Ev();
+extern void _ZN9S485C3_nt3v89Ev();
+extern void _ZN9S485C3_nt3v90Ev();
+extern void _ZN9S485C3_nt3v91Ev();
+extern void _ZN9S485C3_nt3v92Ev();
+extern void _ZN9S485C3_nt3v93Ev();
+extern void _ZN9S485C3_nt3v94Ev();
+extern void _ZN9S485C3_nt3v95Ev();
+extern void _ZN9S485C3_nt3v96Ev();
+extern void _ZN9S485C3_nt3v97Ev();
+extern void _ZN9S485C3_nt3v98Ev();
+extern void _ZN9S485C3_nt3v99Ev();
+extern void _ZN9S485C3_nt4v100Ev();
+extern void _ZN9S485C3_nt4v101Ev();
+extern void _ZN9S485C3_nt4v102Ev();
+extern void _ZN9S485C3_nt4v103Ev();
+extern void _ZN9S485C3_nt4v104Ev();
+extern void _ZN9S485C3_nt4v105Ev();
+extern void _ZN9S485C3_nt4v106Ev();
+extern void _ZN9S485C3_nt4v107Ev();
+extern void _ZN9S485C3_nt4v108Ev();
+extern void _ZN9S485C3_nt4v109Ev();
+extern void _ZN9S485C3_nt4v110Ev();
+extern void _ZN9S485C3_nt4v111Ev();
+extern void _ZN9S485C3_nt4v112Ev();
+extern void _ZN9S485C3_nt4v113Ev();
+extern void _ZN9S485C3_nt4v114Ev();
+extern void _ZN9S485C3_nt4v115Ev();
+extern void _ZN9S485C3_nt4v116Ev();
+extern void _ZN9S485C3_nt4v117Ev();
+extern void _ZN9S485C3_nt4v118Ev();
+extern void _ZN9S485C3_nt4v119Ev();
+extern void _ZN9S485C3_nt4v120Ev();
+extern void _ZN9S485C3_nt4v121Ev();
+extern void _ZN9S485C3_nt4v122Ev();
+extern void _ZN9S485C3_nt4v123Ev();
+extern void _ZN9S485C3_nt4v124Ev();
+extern void _ZN9S485C3_nt4v125Ev();
+extern void _ZN9S485C3_nt4v126Ev();
+extern void _ZN9S485C3_nt4v127Ev();
+extern void _ZN9S485C3_nt4v128Ev();
+extern void _ZN9S485C3_nt4v129Ev();
+extern void _ZN9S485C3_nt4v130Ev();
+extern void _ZN9S485C3_nt4v131Ev();
+extern void _ZN9S485C3_nt4v132Ev();
+extern void _ZN9S485C3_nt4v133Ev();
+extern void _ZN9S485C3_nt4v134Ev();
+extern void _ZN9S485C3_nt4v135Ev();
+extern void _ZN9S485C3_nt4v136Ev();
+extern void _ZN9S485C3_nt4v137Ev();
+extern void _ZN9S485C3_nt4v138Ev();
+extern void _ZN9S485C3_nt4v139Ev();
+extern void _ZN9S485C3_nt4v140Ev();
+extern void _ZN9S485C3_nt4v141Ev();
+extern void _ZN9S485C3_nt4v142Ev();
+extern void _ZN9S485C3_nt4v143Ev();
+extern void _ZN9S485C3_nt4v144Ev();
+extern void _ZN9S485C3_nt4v145Ev();
+extern void _ZN9S485C3_nt4v146Ev();
+extern void _ZN9S485C3_nt4v147Ev();
+extern void _ZN9S485C3_nt4v148Ev();
+extern void _ZN9S485C3_nt4v149Ev();
+extern void _ZN9S485C3_nt4v150Ev();
+extern void _ZN9S485C3_nt4v151Ev();
+extern void _ZN9S485C3_nt4v152Ev();
+extern void _ZN9S485C3_nt4v153Ev();
+extern void _ZN9S485C2_nt4v154Ev();
+extern void _ZN9S485C2_nt4v155Ev();
+extern void _ZN9S485C2_nt4v156Ev();
+extern void _ZN9S485C2_nt4v157Ev();
+extern void _ZN9S485C2_nt4v158Ev();
+extern void _ZN9S485C2_nt4v159Ev();
+extern void _ZN9S485C2_nt4v160Ev();
+extern void _ZN9S485C2_nt4v161Ev();
+extern void _ZN9S485C2_nt4v162Ev();
+extern void _ZN9S485C2_nt4v163Ev();
+extern void _ZN9S485C2_nt4v164Ev();
+extern void _ZN9S485C2_nt4v165Ev();
+extern void _ZN9S485C2_nt4v166Ev();
+extern void _ZN9S485C2_nt4v167Ev();
+extern void _ZN9S485C2_nt4v168Ev();
+extern void _ZN9S485C2_nt4v169Ev();
+extern void _ZN9S485C2_nt4v170Ev();
+extern void _ZN9S485C2_nt4v171Ev();
+extern void _ZN9S485C2_nt4v172Ev();
+extern void _ZN9S485C2_nt4v173Ev();
+extern void _ZN9S485C2_nt4v174Ev();
+extern void _ZN9S485C2_nt4v175Ev();
+extern void _ZN9S485C2_nt4v176Ev();
+extern void _ZN9S485C2_nt4v177Ev();
+extern void _ZN9S485C2_nt4v178Ev();
+extern void _ZN9S485C2_nt4v179Ev();
+extern void _ZN9S485C2_nt4v180Ev();
+extern void _ZN9S485C2_nt4v181Ev();
+extern void _ZN9S485C2_nt4v182Ev();
+extern void _ZN9S485C2_nt4v183Ev();
+extern void _ZN9S485C2_nt4v184Ev();
+extern void _ZN9S485C2_nt4v185Ev();
+extern void _ZN9S485C2_nt4v186Ev();
+extern void _ZN9S485C2_nt4v187Ev();
+extern void _ZN9S485C2_nt4v188Ev();
+extern void _ZN9S485C2_nt4v189Ev();
+extern void _ZN9S485C2_nt4v190Ev();
+extern void _ZN9S485C2_nt4v191Ev();
+extern void _ZN9S485C2_nt4v192Ev();
+extern void _ZN9S485C2_nt4v193Ev();
+extern void _ZN9S485C2_nt4v194Ev();
+extern void _ZN9S485C2_nt4v195Ev();
+extern void _ZN9S485C2_nt4v196Ev();
+extern void _ZN9S485C2_nt4v197Ev();
+extern void _ZN9S485C2_nt4v198Ev();
+extern void _ZN9S485C2_nt4v199Ev();
+extern void _ZN9S485C2_nt4v200Ev();
+extern void _ZN9S485C2_nt4v201Ev();
+extern void _ZN9S485C2_nt4v202Ev();
+extern void _ZN9S485C2_nt4v203Ev();
+extern void _ZN9S485C2_nt4v204Ev();
+extern void _ZN9S485C2_nt4v205Ev();
+extern void _ZN9S485C2_nt4v206Ev();
+extern void _ZN9S485C2_nt4v207Ev();
+extern void _ZN9S485C2_nt4v208Ev();
+extern void _ZN9S485C2_nt4v209Ev();
+extern void _ZN9S485C2_nt4v210Ev();
+extern void _ZN9S485C2_nt4v211Ev();
+extern void _ZN9S485C2_nt4v212Ev();
+extern void _ZN9S485C2_nt4v213Ev();
+extern void _ZN9S485C2_nt4v214Ev();
+extern void _ZN9S485C2_nt4v215Ev();
+extern void _ZN9S485C2_nt4v216Ev();
+extern void _ZN9S485C2_nt4v217Ev();
+extern void _ZN9S485C2_nt4v218Ev();
+extern void _ZN9S485C2_nt4v219Ev();
+extern void _ZN9S485C2_nt4v220Ev();
+extern void _ZN9S485C2_nt4v221Ev();
+extern void _ZN9S485C2_nt4v222Ev();
+extern void _ZN6S485C12v1Ev();
+extern void _ZN6S485C12v2Ev();
+extern void _ZN6S485C12v3Ev();
+extern void _ZN6S485C12v4Ev();
+extern void _ZN6S485C12v5Ev();
+extern void _ZN6S485C12v6Ev();
+extern void _ZN6S485C12v7Ev();
+extern void _ZN6S485C12v8Ev();
+extern void _ZN6S485C12v9Ev();
+extern void _ZN6S485C13v10Ev();
+extern void _ZN6S485C13v11Ev();
+static  VTBL_ENTRY vtc_S485C1[] = {
+  0,
+  (VTBL_ENTRY)&(_ZTI6S485C1[0]),
+  (VTBL_ENTRY)&_ZN6S485C1D1Ev,
+  (VTBL_ENTRY)&_ZN6S485C1D0Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v12Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v13Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v14Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v15Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v16Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v17Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v18Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v19Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v20Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v21Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v22Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v23Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v24Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v25Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v26Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v27Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v28Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v29Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v30Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v31Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v32Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v33Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v34Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v35Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v36Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v37Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v38Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v39Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v40Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v41Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v42Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v43Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v44Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v45Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v46Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v47Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v48Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v49Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v50Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v51Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v52Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v53Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v54Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v55Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v56Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v57Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v58Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v59Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v60Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v61Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v62Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v63Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v64Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v65Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v66Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v67Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v68Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v69Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v70Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v71Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v72Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v73Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v74Ev,
+  (VTBL_ENTRY)&_ZN9S485C5_nt3v75Ev,
+  (VTBL_ENTRY)&_ZN9S485C4_nt3v76Ev,
+  (VTBL_ENTRY)&_ZN9S485C4_nt3v77Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt3v78Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt3v79Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt3v80Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt3v81Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt3v82Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt3v83Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt3v84Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt3v85Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt3v86Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt3v87Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt3v88Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt3v89Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt3v90Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt3v91Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt3v92Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt3v93Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt3v94Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt3v95Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt3v96Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt3v97Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt3v98Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt3v99Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v100Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v101Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v102Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v103Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v104Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v105Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v106Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v107Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v108Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v109Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v110Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v111Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v112Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v113Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v114Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v115Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v116Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v117Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v118Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v119Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v120Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v121Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v122Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v123Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v124Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v125Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v126Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v127Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v128Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v129Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v130Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v131Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v132Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v133Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v134Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v135Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v136Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v137Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v138Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v139Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v140Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v141Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v142Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v143Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v144Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v145Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v146Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v147Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v148Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v149Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v150Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v151Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v152Ev,
+  (VTBL_ENTRY)&_ZN9S485C3_nt4v153Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v154Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v155Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v156Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v157Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v158Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v159Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v160Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v161Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v162Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v163Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v164Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v165Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v166Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v167Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v168Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v169Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v170Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v171Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v172Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v173Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v174Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v175Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v176Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v177Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v178Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v179Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v180Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v181Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v182Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v183Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v184Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v185Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v186Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v187Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v188Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v189Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v190Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v191Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v192Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v193Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v194Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v195Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v196Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v197Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v198Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v199Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v200Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v201Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v202Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v203Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v204Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v205Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v206Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v207Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v208Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v209Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v210Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v211Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v212Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v213Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v214Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v215Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v216Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v217Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v218Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v219Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v220Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v221Ev,
+  (VTBL_ENTRY)&_ZN9S485C2_nt4v222Ev,
+  (VTBL_ENTRY)&_ZN6S485C12v1Ev,
+  (VTBL_ENTRY)&_ZN6S485C12v2Ev,
+  (VTBL_ENTRY)&_ZN6S485C12v3Ev,
+  (VTBL_ENTRY)&_ZN6S485C12v4Ev,
+  (VTBL_ENTRY)&_ZN6S485C12v5Ev,
+  (VTBL_ENTRY)&_ZN6S485C12v6Ev,
+  (VTBL_ENTRY)&_ZN6S485C12v7Ev,
+  (VTBL_ENTRY)&_ZN6S485C12v8Ev,
+  (VTBL_ENTRY)&_ZN6S485C12v9Ev,
+  (VTBL_ENTRY)&_ZN6S485C13v10Ev,
+  (VTBL_ENTRY)&_ZN6S485C13v11Ev,
+};
+extern VTBL_ENTRY _ZTI6S485C1[];
+extern  VTBL_ENTRY _ZTV6S485C1[];
+Class_Descriptor cd_S485C1 = {  "S485C1", // class name
+  bases_S485C1, 4,
+  &(vtc_S485C1[0]), // expected_vtbl_contents
+  0, //no vtt
+  ABISELECT(1248,924), // object size
+  NSPAIRA(_ZTI6S485C1),ABISELECT(24,12), //typeinfo_var
+  NSPAIRA(_ZTV6S485C1),226, //virtual function table var
+  2, // offset into main vftv pointed to by object[0]
+  {0,0},0, // virtual table table var
+  4, // n_initialized_bases
+  0, // has_virtual_bases
+  1, // has_class_type_fields
+  0, // alt-thunk-names
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S2261C8_nt  {
+  void  mf2261c8(); // _ZN10S2261C8_nt8mf2261c8Ev
+};
+//SIG(-1 S2261C8_nt) C1{ m}
+
+
+void  S2261C8_nt ::mf2261c8(){}
+
+//skip512 S2261C8_nt
+
+#else // __cplusplus
+
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S2261C6_nt  {
+  void *s2261c6f0;
+  int s2261c6f1;
+  ::S485C30_nt s2261c6f2;
+  ::S2261C8_nt s2261c6f3;
+  void  mf2261c6(); // _ZN10S2261C6_nt8mf2261c6Ev
+};
+//SIG(-1 S2261C6_nt) C1{ m Fp Fi FC2{ m} FC3{ m}}
+
+
+void  S2261C6_nt ::mf2261c6(){}
+
+//skip512 S2261C6_nt
+
+#else // __cplusplus
+
+Class_Descriptor cd_S2261C6_nt = {  "S2261C6_nt", // class name
+  0,0,//no base classes
+  0, // no vftv
+  0, //no vtt
+  ABISELECT(16,12), // object size
+  {0,0},0, // typeinfo_var
+  {0,0},0, // virtual function table var
+  2, // offset into main vftv pointed to by object[0]
+  {0,0},0, // virtual table table var
+  0, // n_initialized_bases
+  0, // has_virtual_bases
+  1, // has_class_type_fields
+  0, // alt-thunk-names
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S2261C5_nt  : S2261C6_nt {
+};
+//SIG(-1 S2261C5_nt) C1{ BC2{ m Fp Fi FC3{ m} FC4{ m}}}
+
+
+
+//skip512 S2261C5_nt
+
+#else // __cplusplus
+
+extern Class_Descriptor cd_S2261C6_nt;
+static Base_Class bases_S2261C5_nt[] = {
+  // ofst, vfto, nneg, vtt_idx, base_vtt_idx, init_seq, direct, virtual
+  {&cd_S2261C6_nt,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    -1, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {0}};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S2261C4_nt  {
+  void *s2261c4f0;
+  int s2261c4f1;
+  ::S2261C5_nt s2261c4f2;
+  ::S2261C5_nt s2261c4f3;
+  int s2261c4f4;
+  virtual  ~S2261C4_nt(); // _ZN10S2261C4_ntD1Ev
+  virtual void  v4(); // _ZN10S2261C4_nt2v4Ev
+  virtual void  v5(); // _ZN10S2261C4_nt2v5Ev
+  virtual void  v6(); // _ZN10S2261C4_nt2v6Ev
+  virtual void  v7(); // _ZN10S2261C4_nt2v7Ev
+  virtual void  v8(); // _ZN10S2261C4_nt2v8Ev
+  virtual void  v9(); // _ZN10S2261C4_nt2v9Ev
+  virtual void  v10(); // _ZN10S2261C4_nt3v10Ev
+  virtual void  v11(); // _ZN10S2261C4_nt3v11Ev
+  virtual void  v12(); // _ZN10S2261C4_nt3v12Ev
+  virtual void  v13(); // _ZN10S2261C4_nt3v13Ev
+  virtual void  v14(); // _ZN10S2261C4_nt3v14Ev
+  virtual void  v15(); // _ZN10S2261C4_nt3v15Ev
+  virtual void  v16(); // _ZN10S2261C4_nt3v16Ev
+  virtual void  v17(); // _ZN10S2261C4_nt3v17Ev
+  virtual void  v18(); // _ZN10S2261C4_nt3v18Ev
+  virtual void  v19(); // _ZN10S2261C4_nt3v19Ev
+  virtual void  v20(); // _ZN10S2261C4_nt3v20Ev
+  virtual void  v21(); // _ZN10S2261C4_nt3v21Ev
+  virtual void  v22(); // _ZN10S2261C4_nt3v22Ev
+  virtual void  v23(); // _ZN10S2261C4_nt3v23Ev
+  virtual void  v24(); // _ZN10S2261C4_nt3v24Ev
+  virtual void  v25(); // _ZN10S2261C4_nt3v25Ev
+  virtual void  v26(); // _ZN10S2261C4_nt3v26Ev
+  S2261C4_nt(); // tgen
+};
+//SIG(-1 S2261C4_nt) C1{ vd v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 v13 v14 v15 v16 v17 v18 v19 v20 v21 v22 v23 Fp Fi FC2{ BC3{ m Fp Fi FC4{ m} FC5{ m}}} FC2 Fi}
+
+
+ S2261C4_nt ::~S2261C4_nt(){ note_dtor("S2261C4_nt", this);}
+void  S2261C4_nt ::v4(){vfunc_called(this, "_ZN10S2261C4_nt2v4Ev");}
+void  S2261C4_nt ::v5(){vfunc_called(this, "_ZN10S2261C4_nt2v5Ev");}
+void  S2261C4_nt ::v6(){vfunc_called(this, "_ZN10S2261C4_nt2v6Ev");}
+void  S2261C4_nt ::v7(){vfunc_called(this, "_ZN10S2261C4_nt2v7Ev");}
+void  S2261C4_nt ::v8(){vfunc_called(this, "_ZN10S2261C4_nt2v8Ev");}
+void  S2261C4_nt ::v9(){vfunc_called(this, "_ZN10S2261C4_nt2v9Ev");}
+void  S2261C4_nt ::v10(){vfunc_called(this, "_ZN10S2261C4_nt3v10Ev");}
+void  S2261C4_nt ::v11(){vfunc_called(this, "_ZN10S2261C4_nt3v11Ev");}
+void  S2261C4_nt ::v12(){vfunc_called(this, "_ZN10S2261C4_nt3v12Ev");}
+void  S2261C4_nt ::v13(){vfunc_called(this, "_ZN10S2261C4_nt3v13Ev");}
+void  S2261C4_nt ::v14(){vfunc_called(this, "_ZN10S2261C4_nt3v14Ev");}
+void  S2261C4_nt ::v15(){vfunc_called(this, "_ZN10S2261C4_nt3v15Ev");}
+void  S2261C4_nt ::v16(){vfunc_called(this, "_ZN10S2261C4_nt3v16Ev");}
+void  S2261C4_nt ::v17(){vfunc_called(this, "_ZN10S2261C4_nt3v17Ev");}
+void  S2261C4_nt ::v18(){vfunc_called(this, "_ZN10S2261C4_nt3v18Ev");}
+void  S2261C4_nt ::v19(){vfunc_called(this, "_ZN10S2261C4_nt3v19Ev");}
+void  S2261C4_nt ::v20(){vfunc_called(this, "_ZN10S2261C4_nt3v20Ev");}
+void  S2261C4_nt ::v21(){vfunc_called(this, "_ZN10S2261C4_nt3v21Ev");}
+void  S2261C4_nt ::v22(){vfunc_called(this, "_ZN10S2261C4_nt3v22Ev");}
+void  S2261C4_nt ::v23(){vfunc_called(this, "_ZN10S2261C4_nt3v23Ev");}
+void  S2261C4_nt ::v24(){vfunc_called(this, "_ZN10S2261C4_nt3v24Ev");}
+void  S2261C4_nt ::v25(){vfunc_called(this, "_ZN10S2261C4_nt3v25Ev");}
+void  S2261C4_nt ::v26(){vfunc_called(this, "_ZN10S2261C4_nt3v26Ev");}
+S2261C4_nt ::S2261C4_nt(){ note_ctor("S2261C4_nt", this);} // tgen
+
+//skip512 S2261C4_nt
+
+#else // __cplusplus
+
+extern void _ZN10S2261C4_ntC1Ev();
+extern void _ZN10S2261C4_ntD1Ev();
+Name_Map name_map_S2261C4_nt[] = {
+  NSPAIR(_ZN10S2261C4_ntC1Ev),
+  NSPAIR(_ZN10S2261C4_ntD1Ev),
+  {0,0}
+};
+extern VTBL_ENTRY _ZTI10S2261C4_nt[];
+extern void _ZN10S2261C4_ntD1Ev();
+extern void _ZN10S2261C4_ntD0Ev();
+extern void _ZN10S2261C4_nt2v4Ev();
+extern void _ZN10S2261C4_nt2v5Ev();
+extern void _ZN10S2261C4_nt2v6Ev();
+extern void _ZN10S2261C4_nt2v7Ev();
+extern void _ZN10S2261C4_nt2v8Ev();
+extern void _ZN10S2261C4_nt2v9Ev();
+extern void _ZN10S2261C4_nt3v10Ev();
+extern void _ZN10S2261C4_nt3v11Ev();
+extern void _ZN10S2261C4_nt3v12Ev();
+extern void _ZN10S2261C4_nt3v13Ev();
+extern void _ZN10S2261C4_nt3v14Ev();
+extern void _ZN10S2261C4_nt3v15Ev();
+extern void _ZN10S2261C4_nt3v16Ev();
+extern void _ZN10S2261C4_nt3v17Ev();
+extern void _ZN10S2261C4_nt3v18Ev();
+extern void _ZN10S2261C4_nt3v19Ev();
+extern void _ZN10S2261C4_nt3v20Ev();
+extern void _ZN10S2261C4_nt3v21Ev();
+extern void _ZN10S2261C4_nt3v22Ev();
+extern void _ZN10S2261C4_nt3v23Ev();
+extern void _ZN10S2261C4_nt3v24Ev();
+extern void _ZN10S2261C4_nt3v25Ev();
+extern void _ZN10S2261C4_nt3v26Ev();
+static  VTBL_ENTRY vtc_S2261C4_nt[] = {
+  0,
+  (VTBL_ENTRY)&(_ZTI10S2261C4_nt[0]),
+  (VTBL_ENTRY)&_ZN10S2261C4_ntD1Ev,
+  (VTBL_ENTRY)&_ZN10S2261C4_ntD0Ev,
+  (VTBL_ENTRY)&_ZN10S2261C4_nt2v4Ev,
+  (VTBL_ENTRY)&_ZN10S2261C4_nt2v5Ev,
+  (VTBL_ENTRY)&_ZN10S2261C4_nt2v6Ev,
+  (VTBL_ENTRY)&_ZN10S2261C4_nt2v7Ev,
+  (VTBL_ENTRY)&_ZN10S2261C4_nt2v8Ev,
+  (VTBL_ENTRY)&_ZN10S2261C4_nt2v9Ev,
+  (VTBL_ENTRY)&_ZN10S2261C4_nt3v10Ev,
+  (VTBL_ENTRY)&_ZN10S2261C4_nt3v11Ev,
+  (VTBL_ENTRY)&_ZN10S2261C4_nt3v12Ev,
+  (VTBL_ENTRY)&_ZN10S2261C4_nt3v13Ev,
+  (VTBL_ENTRY)&_ZN10S2261C4_nt3v14Ev,
+  (VTBL_ENTRY)&_ZN10S2261C4_nt3v15Ev,
+  (VTBL_ENTRY)&_ZN10S2261C4_nt3v16Ev,
+  (VTBL_ENTRY)&_ZN10S2261C4_nt3v17Ev,
+  (VTBL_ENTRY)&_ZN10S2261C4_nt3v18Ev,
+  (VTBL_ENTRY)&_ZN10S2261C4_nt3v19Ev,
+  (VTBL_ENTRY)&_ZN10S2261C4_nt3v20Ev,
+  (VTBL_ENTRY)&_ZN10S2261C4_nt3v21Ev,
+  (VTBL_ENTRY)&_ZN10S2261C4_nt3v22Ev,
+  (VTBL_ENTRY)&_ZN10S2261C4_nt3v23Ev,
+  (VTBL_ENTRY)&_ZN10S2261C4_nt3v24Ev,
+  (VTBL_ENTRY)&_ZN10S2261C4_nt3v25Ev,
+  (VTBL_ENTRY)&_ZN10S2261C4_nt3v26Ev,
+};
+extern VTBL_ENTRY _ZTI10S2261C4_nt[];
+VTBL_ENTRY *P__ZTI10S2261C4_nt = _ZTI10S2261C4_nt; 
+extern  VTBL_ENTRY _ZTV10S2261C4_nt[];
+Class_Descriptor cd_S2261C4_nt = {  "S2261C4_nt", // class name
+  0,0,//no base classes
+  &(vtc_S2261C4_nt[0]), // expected_vtbl_contents
+  0, //no vtt
+  ABISELECT(64,40), // object size
+  NSPAIRA(_ZTI10S2261C4_nt),ABISELECT(16,8), //typeinfo_var
+  NSPAIRA(_ZTV10S2261C4_nt),27, //virtual function table var
+  2, // offset into main vftv pointed to by object[0]
+  {0,0},0, // virtual table table var
+  0, // n_initialized_bases
+  0, // has_virtual_bases
+  1, // has_class_type_fields
+  0, // alt-thunk-names
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S2261C14_nt  {
+  __tsi64 s2261c14f0[2];
+  void  mf2261c14(); // _ZN11S2261C14_nt9mf2261c14Ev
+};
+//SIG(-1 S2261C14_nt) C1{ m FL[2]}
+
+
+void  S2261C14_nt ::mf2261c14(){}
+
+//skip512 S2261C14_nt
+
+#else // __cplusplus
+
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S2261C13_nt  {
+  ::S2261C14_nt s2261c13f0;
+  void  mf2261c13(); // _ZN11S2261C13_nt9mf2261c13Ev
+};
+//SIG(-1 S2261C13_nt) C1{ m FC2{ m FL[2]}}
+
+
+void  S2261C13_nt ::mf2261c13(){}
+
+//skip512 S2261C13_nt
+
+#else // __cplusplus
+
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S2261C17_nt  {
+  ::S2261C13_nt s2261c17f0;
+  void  mf2261c17(); // _ZN11S2261C17_nt9mf2261c17Ev
+};
+//SIG(-1 S2261C17_nt) C1{ m FC2{ m FC3{ m FL[2]}}}
+
+
+void  S2261C17_nt ::mf2261c17(){}
+
+//skip512 S2261C17_nt
+
+#else // __cplusplus
+
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S2261C18_nt  {
+  ::S2261C13_nt s2261c18f0;
+  ::S2261C13_nt s2261c18f1;
+  ::S2261C13_nt s2261c18f2;
+  ::S2261C13_nt s2261c18f3;
+  void  mf2261c18(); // _ZN11S2261C18_nt9mf2261c18Ev
+};
+//SIG(-1 S2261C18_nt) C1{ m FC2{ m FC3{ m FL[2]}} FC2 FC2 FC2}
+
+
+void  S2261C18_nt ::mf2261c18(){}
+
+//skip512 S2261C18_nt
+
+#else // __cplusplus
+
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S2261C20_nt  {
+  void *s2261c20f0;
+  int s2261c20f1;
+  ::S2261C8_nt s2261c20f2;
+  void  mf2261c20(); // _ZN11S2261C20_nt9mf2261c20Ev
+};
+//SIG(-1 S2261C20_nt) C1{ m Fp Fi FC2{ m}}
+
+
+void  S2261C20_nt ::mf2261c20(){}
+
+//skip512 S2261C20_nt
+
+#else // __cplusplus
+
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S2261C19_nt  {
+  ::S2261C20_nt s2261c19f0;
+  int s2261c19f1;
+  void  mf2261c19(); // _ZN11S2261C19_nt9mf2261c19Ev
+};
+//SIG(-1 S2261C19_nt) C1{ m FC2{ m Fp Fi FC3{ m}} Fi}
+
+
+void  S2261C19_nt ::mf2261c19(){}
+
+//skip512 S2261C19_nt
+
+#else // __cplusplus
+
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S2261C23  {
+  void  mf2261c23(); // _ZN8S2261C239mf2261c23Ev
+};
+//SIG(-1 S2261C23) C1{ m}
+
+
+void  S2261C23 ::mf2261c23(){}
+
+static void Test_S2261C23()
+{
+  {
+    init_simple_test("S2261C23");
+    S2261C23 lv;
+    check2(sizeof(lv), 1, "sizeof(S2261C23)");
+    check2(__alignof__(lv), 1, "__alignof__(S2261C23)");
+  }
+}
+static Arrange_To_Call_Me vS2261C23(Test_S2261C23, "S2261C23", 1);
+
+#else // __cplusplus
+
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S2261C22  {
+  void *s2261c22f0;
+  int s2261c22f1;
+  ::S2261C23 s2261c22f2;
+  ::S2261C23 s2261c22f3;
+  void  mf2261c22(); // _ZN8S2261C229mf2261c22Ev
+};
+//SIG(-1 S2261C22) C1{ m Fp Fi FC2{ m} FC2}
+
+
+void  S2261C22 ::mf2261c22(){}
+
+static void Test_S2261C22()
+{
+  {
+    init_simple_test("S2261C22");
+    S2261C22 lv;
+    check2(sizeof(lv), ABISELECT(16,12), "sizeof(S2261C22)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S2261C22)");
+    check_field_offset(lv, s2261c22f0, 0, "S2261C22.s2261c22f0");
+    check_field_offset(lv, s2261c22f1, ABISELECT(8,4), "S2261C22.s2261c22f1");
+    check_field_offset(lv, s2261c22f2, ABISELECT(12,8), "S2261C22.s2261c22f2");
+    check_field_offset(lv, s2261c22f3, ABISELECT(13,9), "S2261C22.s2261c22f3");
+  }
+}
+static Arrange_To_Call_Me vS2261C22(Test_S2261C22, "S2261C22", ABISELECT(16,12));
+
+#else // __cplusplus
+
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S2261C27  {
+  void  mf2261c27(); // _ZN8S2261C279mf2261c27Ev
+};
+//SIG(-1 S2261C27) C1{ m}
+
+
+void  S2261C27 ::mf2261c27(){}
+
+static void Test_S2261C27()
+{
+  {
+    init_simple_test("S2261C27");
+    S2261C27 lv;
+    check2(sizeof(lv), 1, "sizeof(S2261C27)");
+    check2(__alignof__(lv), 1, "__alignof__(S2261C27)");
+  }
+}
+static Arrange_To_Call_Me vS2261C27(Test_S2261C27, "S2261C27", 1);
+
+#else // __cplusplus
+
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S2261C26  {
+  void *s2261c26f0;
+  int s2261c26f1;
+  ::S2261C27 s2261c26f2;
+  ::S2261C27 s2261c26f3;
+  void  mf2261c26(); // _ZN8S2261C269mf2261c26Ev
+};
+//SIG(-1 S2261C26) C1{ m Fp Fi FC2{ m} FC2}
+
+
+void  S2261C26 ::mf2261c26(){}
+
+static void Test_S2261C26()
+{
+  {
+    init_simple_test("S2261C26");
+    S2261C26 lv;
+    check2(sizeof(lv), ABISELECT(16,12), "sizeof(S2261C26)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S2261C26)");
+    check_field_offset(lv, s2261c26f0, 0, "S2261C26.s2261c26f0");
+    check_field_offset(lv, s2261c26f1, ABISELECT(8,4), "S2261C26.s2261c26f1");
+    check_field_offset(lv, s2261c26f2, ABISELECT(12,8), "S2261C26.s2261c26f2");
+    check_field_offset(lv, s2261c26f3, ABISELECT(13,9), "S2261C26.s2261c26f3");
+  }
+}
+static Arrange_To_Call_Me vS2261C26(Test_S2261C26, "S2261C26", ABISELECT(16,12));
+
+#else // __cplusplus
+
+Class_Descriptor cd_S2261C26 = {  "S2261C26", // class name
+  0,0,//no base classes
+  0, // no vftv
+  0, //no vtt
+  ABISELECT(16,12), // object size
+  {0,0},0, // typeinfo_var
+  {0,0},0, // virtual function table var
+  2, // offset into main vftv pointed to by object[0]
+  {0,0},0, // virtual table table var
+  0, // n_initialized_bases
+  0, // has_virtual_bases
+  1, // has_class_type_fields
+  0, // alt-thunk-names
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S2261C25  : S2261C26 {
+};
+//SIG(-1 S2261C25) C1{ BC2{ m Fp Fi FC3{ m} FC3}}
+
+
+
+static void Test_S2261C25()
+{
+  extern Class_Descriptor cd_S2261C25;
+  void *lvp;
+  {
+    ABISELECT(double,int) buf[ABISELECT(3,4)];
+    init_test(&cd_S2261C25, buf);
+    S2261C25 &lv = *(new (buf) S2261C25());
+    lvp = (void*)&lv;
+    check2(sizeof(lv), ABISELECT(16,12), "sizeof(S2261C25)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S2261C25)");
+    check_base_class_offset(lv, (S2261C26*), 0, "S2261C25");
+    test_class_info(&lv, &cd_S2261C25);
+  }
+  Check_Ctor_Dtor_Calls(lvp);
+}
+static Arrange_To_Call_Me vS2261C25(Test_S2261C25, "S2261C25", ABISELECT(16,12));
+
+#else // __cplusplus
+
+extern Class_Descriptor cd_S2261C26;
+static Base_Class bases_S2261C25[] = {
+  // ofst, vfto, nneg, vtt_idx, base_vtt_idx, init_seq, direct, virtual
+  {&cd_S2261C26,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    -1, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {0}};
+Class_Descriptor cd_S2261C25 = {  "S2261C25", // class name
+  bases_S2261C25, 1,
+  0, // no vftv
+  0, //no vtt
+  ABISELECT(16,12), // object size
+  {0,0},0, // typeinfo_var
+  {0,0},0, // virtual function table var
+  2, // offset into main vftv pointed to by object[0]
+  {0,0},0, // virtual table table var
+  0, // n_initialized_bases
+  0, // has_virtual_bases
+  1, // has_class_type_fields
+  0, // alt-thunk-names
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S2261C30  {
+  void  mf2261c30(); // _ZN8S2261C309mf2261c30Ev
+};
+//SIG(-1 S2261C30) C1{ m}
+
+
+void  S2261C30 ::mf2261c30(){}
+
+static void Test_S2261C30()
+{
+  {
+    init_simple_test("S2261C30");
+    S2261C30 lv;
+    check2(sizeof(lv), 1, "sizeof(S2261C30)");
+    check2(__alignof__(lv), 1, "__alignof__(S2261C30)");
+  }
+}
+static Arrange_To_Call_Me vS2261C30(Test_S2261C30, "S2261C30", 1);
+
+#else // __cplusplus
+
+extern VTBL_ENTRY _ZTI8S2261C30[];
+VTBL_ENTRY *P__ZTI8S2261C30 = _ZTI8S2261C30; 
+Class_Descriptor cd_S2261C30 = {  "S2261C30", // class name
+  0,0,//no base classes
+  0, // no vftv
+  0, //no vtt
+  1, // object size
+  NSPAIRA(_ZTI8S2261C30),ABISELECT(16,8), //typeinfo_var
+  {0,0},0, // virtual function table var
+  2, // offset into main vftv pointed to by object[0]
+  {0,0},0, // virtual table table var
+  0, // n_initialized_bases
+  0, // has_virtual_bases
+  0, // has_class_type_fields
+  0, // alt-thunk-names
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S2261C29_nt  {
+  void *s2261c29f0;
+  int s2261c29f1[2];
+  ::S2261C30 s2261c29f2;
+  void  mf2261c29(); // _ZN11S2261C29_nt9mf2261c29Ev
+};
+//SIG(-1 S2261C29_nt) C1{ m Fp Fi[2] FC2{ m}}
+
+
+void  S2261C29_nt ::mf2261c29(){}
+
+//skip512 S2261C29_nt
+
+#else // __cplusplus
+
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S2261C37  {
+  void *s2261c37f0;
+  int s2261c37f1[2];
+  ::S2261C30 s2261c37f2;
+  void  mf2261c37(); // _ZN8S2261C379mf2261c37Ev
+};
+//SIG(-1 S2261C37) C1{ m Fp Fi[2] FC2{ m}}
+
+
+void  S2261C37 ::mf2261c37(){}
+
+static void Test_S2261C37()
+{
+  {
+    init_simple_test("S2261C37");
+    S2261C37 lv;
+    check2(sizeof(lv), ABISELECT(24,16), "sizeof(S2261C37)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S2261C37)");
+    check_field_offset(lv, s2261c37f0, 0, "S2261C37.s2261c37f0");
+    check_field_offset(lv, s2261c37f1, ABISELECT(8,4), "S2261C37.s2261c37f1");
+    check_field_offset(lv, s2261c37f2, ABISELECT(16,12), "S2261C37.s2261c37f2");
+  }
+}
+static Arrange_To_Call_Me vS2261C37(Test_S2261C37, "S2261C37", ABISELECT(24,16));
+
+#else // __cplusplus
+
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S2261C3_nt  : S2261C4_nt {
+  ::S2261C13_nt s2261c3f0;
+  ::S2261C13_nt s2261c3f1;
+  ::S2261C13_nt s2261c3f2;
+  ::S2261C13_nt s2261c3f3;
+  ::S2261C17_nt s2261c3f4;
+  ::S2261C18_nt s2261c3f5;
+  ::S2261C18_nt s2261c3f6;
+  ::S2261C13_nt s2261c3f7;
+  ::S2261C13_nt s2261c3f8;
+  ::S2261C13_nt s2261c3f9;
+  void *s2261c3f10;
+  ::S2261C17_nt s2261c3f11;
+  ::S2261C19_nt s2261c3f12;
+  int s2261c3f13;
+  void *s2261c3f14[7];
+  ::S2261C22 s2261c3f15;
+  int s2261c3f16:8;
+  int s2261c3f17:8;
+  int s2261c3f18:16;
+  int s2261c3f19:16;
+  int s2261c3f20:8;
+  int s2261c3f21:8;
+  int s2261c3f22:8;
+  int s2261c3f23:32;
+  int s2261c3f24:8;
+  int s2261c3f25:4;
+  int s2261c3f26:4;
+  int s2261c3f27:4;
+  int s2261c3f28:4;
+  int s2261c3f29:4;
+  int s2261c3f30:4;
+  int s2261c3f31:4;
+  int s2261c3f32:4;
+  int s2261c3f33:4;
+  int s2261c3f34:4;
+  unsigned char s2261c3f35:1;
+  unsigned char s2261c3f36:1;
+  unsigned char s2261c3f37:1;
+  unsigned char s2261c3f38:1;
+  unsigned char s2261c3f39:1;
+  unsigned char s2261c3f40:1;
+  unsigned char s2261c3f41:1;
+  unsigned char s2261c3f42:1;
+  unsigned char s2261c3f43:1;
+  unsigned char s2261c3f44:1;
+  unsigned char s2261c3f45:1;
+  unsigned char s2261c3f46:1;
+  unsigned char s2261c3f47:1;
+  unsigned char s2261c3f48:1;
+  unsigned char s2261c3f49:1;
+  unsigned char s2261c3f50:1;
+  unsigned char s2261c3f51:1;
+  unsigned char s2261c3f52:1;
+  unsigned char s2261c3f53:1;
+  unsigned char s2261c3f54:1;
+  unsigned char s2261c3f55:1;
+  unsigned char s2261c3f56:1;
+  unsigned char s2261c3f57:1;
+  unsigned char s2261c3f58:1;
+  unsigned char s2261c3f59:1;
+  unsigned char s2261c3f60:1;
+  unsigned char s2261c3f61:1;
+  unsigned char s2261c3f62:1;
+  unsigned char s2261c3f63:1;
+  unsigned char s2261c3f64:1;
+  unsigned char s2261c3f65:1;
+  unsigned char s2261c3f66:1;
+  unsigned char s2261c3f67:1;
+  unsigned char s2261c3f68:1;
+  unsigned char s2261c3f69:1;
+  unsigned char s2261c3f70:1;
+  unsigned char s2261c3f71:1;
+  unsigned char s2261c3f72:1;
+  unsigned char s2261c3f73:1;
+  unsigned char s2261c3f74:1;
+  unsigned char s2261c3f75:1;
+  int s2261c3f76[7];
+  void *s2261c3f77[6];
+  int s2261c3f78:8;
+  int s2261c3f79:8;
+  int s2261c3f80:8;
+  int s2261c3f81:8;
+  int s2261c3f82:8;
+  int s2261c3f83:8;
+  ::S2261C25 s2261c3f84;
+  void *s2261c3f85[4];
+  int s2261c3f86:8;
+  int s2261c3f87:8;
+  int s2261c3f88:8;
+  int s2261c3f89:8;
+  int s2261c3f90:8;
+  int s2261c3f91:16;
+  int s2261c3f92:16;
+  int s2261c3f93:16;
+  int s2261c3f94:4;
+  int s2261c3f95:4;
+  int s2261c3f96:4;
+  int s2261c3f97:4;
+  int s2261c3f98:4;
+  int s2261c3f99:4;
+  int s2261c3f100:4;
+  int s2261c3f101:4;
+  int s2261c3f102:4;
+  int s2261c3f103:4;
+  int s2261c3f104:4;
+  int s2261c3f105:4;
+  int s2261c3f106:8;
+  int s2261c3f107:8;
+  int s2261c3f108:8;
+  void *s2261c3f109[7];
+  ::S2261C29_nt s2261c3f110;
+  void *s2261c3f111[2];
+  int s2261c3f112:16;
+  int s2261c3f113:16;
+  ::S2261C25 s2261c3f114;
+  ::S2261C29_nt s2261c3f115;
+  ::S2261C37 s2261c3f116;
+  void *s2261c3f117[2];
+  int s2261c3f118:24;
+  int s2261c3f119:8;
+  void *s2261c3f120;
+  virtual  ~S2261C3_nt(); // _ZN10S2261C3_ntD1Ev
+  virtual void  v27(); // _ZN10S2261C3_nt3v27Ev
+  virtual void  v28(); // _ZN10S2261C3_nt3v28Ev
+  virtual void  v29(); // _ZN10S2261C3_nt3v29Ev
+  virtual void  v30(); // _ZN10S2261C3_nt3v30Ev
+  virtual void  v31(); // _ZN10S2261C3_nt3v31Ev
+  virtual void  v32(); // _ZN10S2261C3_nt3v32Ev
+  virtual void  v33(); // _ZN10S2261C3_nt3v33Ev
+  virtual void  v34(); // _ZN10S2261C3_nt3v34Ev
+  virtual void  v35(); // _ZN10S2261C3_nt3v35Ev
+  virtual void  v36(); // _ZN10S2261C3_nt3v36Ev
+  virtual void  v37(); // _ZN10S2261C3_nt3v37Ev
+  virtual void  v38(); // _ZN10S2261C3_nt3v38Ev
+  virtual void  v39(); // _ZN10S2261C3_nt3v39Ev
+  virtual void  v40(); // _ZN10S2261C3_nt3v40Ev
+  virtual void  v41(); // _ZN10S2261C3_nt3v41Ev
+  virtual void  v42(); // _ZN10S2261C3_nt3v42Ev
+  virtual void  v43(); // _ZN10S2261C3_nt3v43Ev
+  virtual void  v44(); // _ZN10S2261C3_nt3v44Ev
+  virtual void  v45(); // _ZN10S2261C3_nt3v45Ev
+  virtual void  v46(); // _ZN10S2261C3_nt3v46Ev
+  virtual void  v47(); // _ZN10S2261C3_nt3v47Ev
+  virtual void  v48(); // _ZN10S2261C3_nt3v48Ev
+  virtual void  v49(); // _ZN10S2261C3_nt3v49Ev
+  virtual void  v50(); // _ZN10S2261C3_nt3v50Ev
+  virtual void  v51(); // _ZN10S2261C3_nt3v51Ev
+  virtual void  v52(); // _ZN10S2261C3_nt3v52Ev
+  virtual void  v53(); // _ZN10S2261C3_nt3v53Ev
+  virtual void  v54(); // _ZN10S2261C3_nt3v54Ev
+  virtual void  v55(); // _ZN10S2261C3_nt3v55Ev
+  virtual void  v56(); // _ZN10S2261C3_nt3v56Ev
+  virtual void  v57(); // _ZN10S2261C3_nt3v57Ev
+  virtual void  v58(); // _ZN10S2261C3_nt3v58Ev
+  virtual void  v59(); // _ZN10S2261C3_nt3v59Ev
+  virtual void  v60(); // _ZN10S2261C3_nt3v60Ev
+  virtual void  v61(); // _ZN10S2261C3_nt3v61Ev
+  virtual void  v62(); // _ZN10S2261C3_nt3v62Ev
+  virtual void  v63(); // _ZN10S2261C3_nt3v63Ev
+  virtual void  v64(); // _ZN10S2261C3_nt3v64Ev
+  virtual void  v65(); // _ZN10S2261C3_nt3v65Ev
+  virtual void  v66(); // _ZN10S2261C3_nt3v66Ev
+  virtual void  v67(); // _ZN10S2261C3_nt3v67Ev
+  virtual void  v68(); // _ZN10S2261C3_nt3v68Ev
+  virtual void  v69(); // _ZN10S2261C3_nt3v69Ev
+  virtual void  v70(); // _ZN10S2261C3_nt3v70Ev
+  virtual void  v71(); // _ZN10S2261C3_nt3v71Ev
+  virtual void  v72(); // _ZN10S2261C3_nt3v72Ev
+  virtual void  v73(); // _ZN10S2261C3_nt3v73Ev
+  virtual void  v74(); // _ZN10S2261C3_nt3v74Ev
+  virtual void  v75(); // _ZN10S2261C3_nt3v75Ev
+  virtual void  v76(); // _ZN10S2261C3_nt3v76Ev
+  virtual void  v77(); // _ZN10S2261C3_nt3v77Ev
+  virtual void  v78(); // _ZN10S2261C3_nt3v78Ev
+  virtual void  v79(); // _ZN10S2261C3_nt3v79Ev
+  virtual void  v80(); // _ZN10S2261C3_nt3v80Ev
+  virtual void  v81(); // _ZN10S2261C3_nt3v81Ev
+  virtual void  v82(); // _ZN10S2261C3_nt3v82Ev
+  virtual void  v83(); // _ZN10S2261C3_nt3v83Ev
+  virtual void  v84(); // _ZN10S2261C3_nt3v84Ev
+  virtual void  v85(); // _ZN10S2261C3_nt3v85Ev
+  virtual void  v86(); // _ZN10S2261C3_nt3v86Ev
+  virtual void  v87(); // _ZN10S2261C3_nt3v87Ev
+  virtual void  v88(); // _ZN10S2261C3_nt3v88Ev
+  virtual void  v89(); // _ZN10S2261C3_nt3v89Ev
+  virtual void  v90(); // _ZN10S2261C3_nt3v90Ev
+  virtual void  v91(); // _ZN10S2261C3_nt3v91Ev
+  virtual void  v92(); // _ZN10S2261C3_nt3v92Ev
+  virtual void  v93(); // _ZN10S2261C3_nt3v93Ev
+  virtual void  v94(); // _ZN10S2261C3_nt3v94Ev
+  virtual void  v95(); // _ZN10S2261C3_nt3v95Ev
+  virtual void  v96(); // _ZN10S2261C3_nt3v96Ev
+  virtual void  v97(); // _ZN10S2261C3_nt3v97Ev
+  virtual void  v98(); // _ZN10S2261C3_nt3v98Ev
+  virtual void  v99(); // _ZN10S2261C3_nt3v99Ev
+  virtual void  v100(); // _ZN10S2261C3_nt4v100Ev
+  virtual void  v101(); // _ZN10S2261C3_nt4v101Ev
+  virtual void  v102(); // _ZN10S2261C3_nt4v102Ev
+  virtual void  v103(); // _ZN10S2261C3_nt4v103Ev
+  virtual void  v104(); // _ZN10S2261C3_nt4v104Ev
+  S2261C3_nt(); // tgen
+};
+//SIG(-1 S2261C3_nt) C1{ BC2{ vd v79 v80 v81 v82 v83 v84 v85 v86 v87 v88 v89 v90 v91 v92 v93 v94 v95 v96 v97 v98 v99 v100 v101 Fp Fi FC3{ BC4{ m Fp Fi FC5{ m} FC6{ m}}} FC3 Fi} vd v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 v13 v14 v15 v16 v17 v18 v19 v20 v21 v22 v23 v24 v25 v26 v27 v28 v29 v30 v31 v32 v33 v34 v35 v36 v37 v38 v39 v40 v41 v42 v43 v44 v45 v46 v47 v48 v49 v50 v51 v52 v53 v54 v55 v56 v57 v58 v59 v60 v61 v62 v63 v64 v65 v66 v67 v68 v69 v70 v71 v72 v73 v74 v75 v76 v77 v78 FC7{ m FC8{ m FL[2]}} FC7 FC7 FC7 FC9{ m FC7} FC10{ m FC7 FC7 FC7 FC7} FC10 FC7 FC7 FC7 Fp FC9 FC11{ m FC12{ m Fp Fi FC6} Fi} Fi Fp[7] FC13{ m Fp Fi FC14{ m} FC14} Fi:8 Fi:8 Fi:16 Fi:16 Fi:8 Fi:8 Fi:8 Fi:32 Fi:8 Fi:4 Fi:4 Fi:4 Fi:4 Fi:4 Fi:4 Fi:4 Fi:4 Fi:4 Fi:4 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fi[7] Fp[6] Fi:8 Fi:8 Fi:8 Fi:8 Fi:8 F!
 i:8 FC15{
  BC16{ m Fp Fi FC17{ m} FC17}} Fp[4] Fi:8 Fi:8 Fi:8 Fi:8 Fi:8 Fi:16 Fi:16 Fi:16 Fi:4 Fi:4 Fi:4 Fi:4 Fi:4 Fi:4 Fi:4 Fi:4 Fi:4 Fi:4 Fi:4 Fi:4 Fi:8 Fi:8 Fi:8 Fp[7] FC18{ m Fp Fi[2] FC19{ m}} Fp[2] Fi:16 Fi:16 FC15 FC18 FC20{ m Fp Fi[2] FC19} Fp[2] Fi:24 Fi:8 Fp}
+
+
+ S2261C3_nt ::~S2261C3_nt(){ note_dtor("S2261C3_nt", this);}
+void  S2261C3_nt ::v27(){vfunc_called(this, "_ZN10S2261C3_nt3v27Ev");}
+void  S2261C3_nt ::v28(){vfunc_called(this, "_ZN10S2261C3_nt3v28Ev");}
+void  S2261C3_nt ::v29(){vfunc_called(this, "_ZN10S2261C3_nt3v29Ev");}
+void  S2261C3_nt ::v30(){vfunc_called(this, "_ZN10S2261C3_nt3v30Ev");}
+void  S2261C3_nt ::v31(){vfunc_called(this, "_ZN10S2261C3_nt3v31Ev");}
+void  S2261C3_nt ::v32(){vfunc_called(this, "_ZN10S2261C3_nt3v32Ev");}
+void  S2261C3_nt ::v33(){vfunc_called(this, "_ZN10S2261C3_nt3v33Ev");}
+void  S2261C3_nt ::v34(){vfunc_called(this, "_ZN10S2261C3_nt3v34Ev");}
+void  S2261C3_nt ::v35(){vfunc_called(this, "_ZN10S2261C3_nt3v35Ev");}
+void  S2261C3_nt ::v36(){vfunc_called(this, "_ZN10S2261C3_nt3v36Ev");}
+void  S2261C3_nt ::v37(){vfunc_called(this, "_ZN10S2261C3_nt3v37Ev");}
+void  S2261C3_nt ::v38(){vfunc_called(this, "_ZN10S2261C3_nt3v38Ev");}
+void  S2261C3_nt ::v39(){vfunc_called(this, "_ZN10S2261C3_nt3v39Ev");}
+void  S2261C3_nt ::v40(){vfunc_called(this, "_ZN10S2261C3_nt3v40Ev");}
+void  S2261C3_nt ::v41(){vfunc_called(this, "_ZN10S2261C3_nt3v41Ev");}
+void  S2261C3_nt ::v42(){vfunc_called(this, "_ZN10S2261C3_nt3v42Ev");}
+void  S2261C3_nt ::v43(){vfunc_called(this, "_ZN10S2261C3_nt3v43Ev");}
+void  S2261C3_nt ::v44(){vfunc_called(this, "_ZN10S2261C3_nt3v44Ev");}
+void  S2261C3_nt ::v45(){vfunc_called(this, "_ZN10S2261C3_nt3v45Ev");}
+void  S2261C3_nt ::v46(){vfunc_called(this, "_ZN10S2261C3_nt3v46Ev");}
+void  S2261C3_nt ::v47(){vfunc_called(this, "_ZN10S2261C3_nt3v47Ev");}
+void  S2261C3_nt ::v48(){vfunc_called(this, "_ZN10S2261C3_nt3v48Ev");}
+void  S2261C3_nt ::v49(){vfunc_called(this, "_ZN10S2261C3_nt3v49Ev");}
+void  S2261C3_nt ::v50(){vfunc_called(this, "_ZN10S2261C3_nt3v50Ev");}
+void  S2261C3_nt ::v51(){vfunc_called(this, "_ZN10S2261C3_nt3v51Ev");}
+void  S2261C3_nt ::v52(){vfunc_called(this, "_ZN10S2261C3_nt3v52Ev");}
+void  S2261C3_nt ::v53(){vfunc_called(this, "_ZN10S2261C3_nt3v53Ev");}
+void  S2261C3_nt ::v54(){vfunc_called(this, "_ZN10S2261C3_nt3v54Ev");}
+void  S2261C3_nt ::v55(){vfunc_called(this, "_ZN10S2261C3_nt3v55Ev");}
+void  S2261C3_nt ::v56(){vfunc_called(this, "_ZN10S2261C3_nt3v56Ev");}
+void  S2261C3_nt ::v57(){vfunc_called(this, "_ZN10S2261C3_nt3v57Ev");}
+void  S2261C3_nt ::v58(){vfunc_called(this, "_ZN10S2261C3_nt3v58Ev");}
+void  S2261C3_nt ::v59(){vfunc_called(this, "_ZN10S2261C3_nt3v59Ev");}
+void  S2261C3_nt ::v60(){vfunc_called(this, "_ZN10S2261C3_nt3v60Ev");}
+void  S2261C3_nt ::v61(){vfunc_called(this, "_ZN10S2261C3_nt3v61Ev");}
+void  S2261C3_nt ::v62(){vfunc_called(this, "_ZN10S2261C3_nt3v62Ev");}
+void  S2261C3_nt ::v63(){vfunc_called(this, "_ZN10S2261C3_nt3v63Ev");}
+void  S2261C3_nt ::v64(){vfunc_called(this, "_ZN10S2261C3_nt3v64Ev");}
+void  S2261C3_nt ::v65(){vfunc_called(this, "_ZN10S2261C3_nt3v65Ev");}
+void  S2261C3_nt ::v66(){vfunc_called(this, "_ZN10S2261C3_nt3v66Ev");}
+void  S2261C3_nt ::v67(){vfunc_called(this, "_ZN10S2261C3_nt3v67Ev");}
+void  S2261C3_nt ::v68(){vfunc_called(this, "_ZN10S2261C3_nt3v68Ev");}
+void  S2261C3_nt ::v69(){vfunc_called(this, "_ZN10S2261C3_nt3v69Ev");}
+void  S2261C3_nt ::v70(){vfunc_called(this, "_ZN10S2261C3_nt3v70Ev");}
+void  S2261C3_nt ::v71(){vfunc_called(this, "_ZN10S2261C3_nt3v71Ev");}
+void  S2261C3_nt ::v72(){vfunc_called(this, "_ZN10S2261C3_nt3v72Ev");}
+void  S2261C3_nt ::v73(){vfunc_called(this, "_ZN10S2261C3_nt3v73Ev");}
+void  S2261C3_nt ::v74(){vfunc_called(this, "_ZN10S2261C3_nt3v74Ev");}
+void  S2261C3_nt ::v75(){vfunc_called(this, "_ZN10S2261C3_nt3v75Ev");}
+void  S2261C3_nt ::v76(){vfunc_called(this, "_ZN10S2261C3_nt3v76Ev");}
+void  S2261C3_nt ::v77(){vfunc_called(this, "_ZN10S2261C3_nt3v77Ev");}
+void  S2261C3_nt ::v78(){vfunc_called(this, "_ZN10S2261C3_nt3v78Ev");}
+void  S2261C3_nt ::v79(){vfunc_called(this, "_ZN10S2261C3_nt3v79Ev");}
+void  S2261C3_nt ::v80(){vfunc_called(this, "_ZN10S2261C3_nt3v80Ev");}
+void  S2261C3_nt ::v81(){vfunc_called(this, "_ZN10S2261C3_nt3v81Ev");}
+void  S2261C3_nt ::v82(){vfunc_called(this, "_ZN10S2261C3_nt3v82Ev");}
+void  S2261C3_nt ::v83(){vfunc_called(this, "_ZN10S2261C3_nt3v83Ev");}
+void  S2261C3_nt ::v84(){vfunc_called(this, "_ZN10S2261C3_nt3v84Ev");}
+void  S2261C3_nt ::v85(){vfunc_called(this, "_ZN10S2261C3_nt3v85Ev");}
+void  S2261C3_nt ::v86(){vfunc_called(this, "_ZN10S2261C3_nt3v86Ev");}
+void  S2261C3_nt ::v87(){vfunc_called(this, "_ZN10S2261C3_nt3v87Ev");}
+void  S2261C3_nt ::v88(){vfunc_called(this, "_ZN10S2261C3_nt3v88Ev");}
+void  S2261C3_nt ::v89(){vfunc_called(this, "_ZN10S2261C3_nt3v89Ev");}
+void  S2261C3_nt ::v90(){vfunc_called(this, "_ZN10S2261C3_nt3v90Ev");}
+void  S2261C3_nt ::v91(){vfunc_called(this, "_ZN10S2261C3_nt3v91Ev");}
+void  S2261C3_nt ::v92(){vfunc_called(this, "_ZN10S2261C3_nt3v92Ev");}
+void  S2261C3_nt ::v93(){vfunc_called(this, "_ZN10S2261C3_nt3v93Ev");}
+void  S2261C3_nt ::v94(){vfunc_called(this, "_ZN10S2261C3_nt3v94Ev");}
+void  S2261C3_nt ::v95(){vfunc_called(this, "_ZN10S2261C3_nt3v95Ev");}
+void  S2261C3_nt ::v96(){vfunc_called(this, "_ZN10S2261C3_nt3v96Ev");}
+void  S2261C3_nt ::v97(){vfunc_called(this, "_ZN10S2261C3_nt3v97Ev");}
+void  S2261C3_nt ::v98(){vfunc_called(this, "_ZN10S2261C3_nt3v98Ev");}
+void  S2261C3_nt ::v99(){vfunc_called(this, "_ZN10S2261C3_nt3v99Ev");}
+void  S2261C3_nt ::v100(){vfunc_called(this, "_ZN10S2261C3_nt4v100Ev");}
+void  S2261C3_nt ::v101(){vfunc_called(this, "_ZN10S2261C3_nt4v101Ev");}
+void  S2261C3_nt ::v102(){vfunc_called(this, "_ZN10S2261C3_nt4v102Ev");}
+void  S2261C3_nt ::v103(){vfunc_called(this, "_ZN10S2261C3_nt4v103Ev");}
+void  S2261C3_nt ::v104(){vfunc_called(this, "_ZN10S2261C3_nt4v104Ev");}
+S2261C3_nt ::S2261C3_nt(){ note_ctor("S2261C3_nt", this);} // tgen
+
+//skip512 S2261C3_nt
+
+#else // __cplusplus
+
+extern void _ZN10S2261C3_ntC1Ev();
+extern void _ZN10S2261C3_ntD1Ev();
+Name_Map name_map_S2261C3_nt[] = {
+  NSPAIR(_ZN10S2261C3_ntC1Ev),
+  NSPAIR(_ZN10S2261C3_ntD1Ev),
+  {0,0}
+};
+extern Class_Descriptor cd_S2261C4_nt;
+extern VTBL_ENTRY _ZTI10S2261C4_nt[];
+extern  VTBL_ENTRY _ZTV10S2261C4_nt[];
+static Base_Class bases_S2261C3_nt[] = {
+  // ofst, vfto, nneg, vtt_idx, base_vtt_idx, init_seq, direct, virtual
+  {&cd_S2261C4_nt,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    1, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {0}};
+extern VTBL_ENTRY _ZTI10S2261C3_nt[];
+extern void _ZN10S2261C3_ntD1Ev();
+extern void _ZN10S2261C3_ntD0Ev();
+extern void _ZN10S2261C4_nt2v4Ev();
+extern void _ZN10S2261C4_nt2v5Ev();
+extern void _ZN10S2261C4_nt2v6Ev();
+extern void _ZN10S2261C4_nt2v7Ev();
+extern void _ZN10S2261C4_nt2v8Ev();
+extern void _ZN10S2261C4_nt2v9Ev();
+extern void _ZN10S2261C4_nt3v10Ev();
+extern void _ZN10S2261C4_nt3v11Ev();
+extern void _ZN10S2261C4_nt3v12Ev();
+extern void _ZN10S2261C4_nt3v13Ev();
+extern void _ZN10S2261C4_nt3v14Ev();
+extern void _ZN10S2261C4_nt3v15Ev();
+extern void _ZN10S2261C4_nt3v16Ev();
+extern void _ZN10S2261C4_nt3v17Ev();
+extern void _ZN10S2261C4_nt3v18Ev();
+extern void _ZN10S2261C4_nt3v19Ev();
+extern void _ZN10S2261C4_nt3v20Ev();
+extern void _ZN10S2261C4_nt3v21Ev();
+extern void _ZN10S2261C4_nt3v22Ev();
+extern void _ZN10S2261C4_nt3v23Ev();
+extern void _ZN10S2261C4_nt3v24Ev();
+extern void _ZN10S2261C4_nt3v25Ev();
+extern void _ZN10S2261C4_nt3v26Ev();
+extern void _ZN10S2261C3_nt3v27Ev();
+extern void _ZN10S2261C3_nt3v28Ev();
+extern void _ZN10S2261C3_nt3v29Ev();
+extern void _ZN10S2261C3_nt3v30Ev();
+extern void _ZN10S2261C3_nt3v31Ev();
+extern void _ZN10S2261C3_nt3v32Ev();
+extern void _ZN10S2261C3_nt3v33Ev();
+extern void _ZN10S2261C3_nt3v34Ev();
+extern void _ZN10S2261C3_nt3v35Ev();
+extern void _ZN10S2261C3_nt3v36Ev();
+extern void _ZN10S2261C3_nt3v37Ev();
+extern void _ZN10S2261C3_nt3v38Ev();
+extern void _ZN10S2261C3_nt3v39Ev();
+extern void _ZN10S2261C3_nt3v40Ev();
+extern void _ZN10S2261C3_nt3v41Ev();
+extern void _ZN10S2261C3_nt3v42Ev();
+extern void _ZN10S2261C3_nt3v43Ev();
+extern void _ZN10S2261C3_nt3v44Ev();
+extern void _ZN10S2261C3_nt3v45Ev();
+extern void _ZN10S2261C3_nt3v46Ev();
+extern void _ZN10S2261C3_nt3v47Ev();
+extern void _ZN10S2261C3_nt3v48Ev();
+extern void _ZN10S2261C3_nt3v49Ev();
+extern void _ZN10S2261C3_nt3v50Ev();
+extern void _ZN10S2261C3_nt3v51Ev();
+extern void _ZN10S2261C3_nt3v52Ev();
+extern void _ZN10S2261C3_nt3v53Ev();
+extern void _ZN10S2261C3_nt3v54Ev();
+extern void _ZN10S2261C3_nt3v55Ev();
+extern void _ZN10S2261C3_nt3v56Ev();
+extern void _ZN10S2261C3_nt3v57Ev();
+extern void _ZN10S2261C3_nt3v58Ev();
+extern void _ZN10S2261C3_nt3v59Ev();
+extern void _ZN10S2261C3_nt3v60Ev();
+extern void _ZN10S2261C3_nt3v61Ev();
+extern void _ZN10S2261C3_nt3v62Ev();
+extern void _ZN10S2261C3_nt3v63Ev();
+extern void _ZN10S2261C3_nt3v64Ev();
+extern void _ZN10S2261C3_nt3v65Ev();
+extern void _ZN10S2261C3_nt3v66Ev();
+extern void _ZN10S2261C3_nt3v67Ev();
+extern void _ZN10S2261C3_nt3v68Ev();
+extern void _ZN10S2261C3_nt3v69Ev();
+extern void _ZN10S2261C3_nt3v70Ev();
+extern void _ZN10S2261C3_nt3v71Ev();
+extern void _ZN10S2261C3_nt3v72Ev();
+extern void _ZN10S2261C3_nt3v73Ev();
+extern void _ZN10S2261C3_nt3v74Ev();
+extern void _ZN10S2261C3_nt3v75Ev();
+extern void _ZN10S2261C3_nt3v76Ev();
+extern void _ZN10S2261C3_nt3v77Ev();
+extern void _ZN10S2261C3_nt3v78Ev();
+extern void _ZN10S2261C3_nt3v79Ev();
+extern void _ZN10S2261C3_nt3v80Ev();
+extern void _ZN10S2261C3_nt3v81Ev();
+extern void _ZN10S2261C3_nt3v82Ev();
+extern void _ZN10S2261C3_nt3v83Ev();
+extern void _ZN10S2261C3_nt3v84Ev();
+extern void _ZN10S2261C3_nt3v85Ev();
+extern void _ZN10S2261C3_nt3v86Ev();
+extern void _ZN10S2261C3_nt3v87Ev();
+extern void _ZN10S2261C3_nt3v88Ev();
+extern void _ZN10S2261C3_nt3v89Ev();
+extern void _ZN10S2261C3_nt3v90Ev();
+extern void _ZN10S2261C3_nt3v91Ev();
+extern void _ZN10S2261C3_nt3v92Ev();
+extern void _ZN10S2261C3_nt3v93Ev();
+extern void _ZN10S2261C3_nt3v94Ev();
+extern void _ZN10S2261C3_nt3v95Ev();
+extern void _ZN10S2261C3_nt3v96Ev();
+extern void _ZN10S2261C3_nt3v97Ev();
+extern void _ZN10S2261C3_nt3v98Ev();
+extern void _ZN10S2261C3_nt3v99Ev();
+extern void _ZN10S2261C3_nt4v100Ev();
+extern void _ZN10S2261C3_nt4v101Ev();
+extern void _ZN10S2261C3_nt4v102Ev();
+extern void _ZN10S2261C3_nt4v103Ev();
+extern void _ZN10S2261C3_nt4v104Ev();
+static  VTBL_ENTRY vtc_S2261C3_nt[] = {
+  0,
+  (VTBL_ENTRY)&(_ZTI10S2261C3_nt[0]),
+  (VTBL_ENTRY)&_ZN10S2261C3_ntD1Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_ntD0Ev,
+  (VTBL_ENTRY)&_ZN10S2261C4_nt2v4Ev,
+  (VTBL_ENTRY)&_ZN10S2261C4_nt2v5Ev,
+  (VTBL_ENTRY)&_ZN10S2261C4_nt2v6Ev,
+  (VTBL_ENTRY)&_ZN10S2261C4_nt2v7Ev,
+  (VTBL_ENTRY)&_ZN10S2261C4_nt2v8Ev,
+  (VTBL_ENTRY)&_ZN10S2261C4_nt2v9Ev,
+  (VTBL_ENTRY)&_ZN10S2261C4_nt3v10Ev,
+  (VTBL_ENTRY)&_ZN10S2261C4_nt3v11Ev,
+  (VTBL_ENTRY)&_ZN10S2261C4_nt3v12Ev,
+  (VTBL_ENTRY)&_ZN10S2261C4_nt3v13Ev,
+  (VTBL_ENTRY)&_ZN10S2261C4_nt3v14Ev,
+  (VTBL_ENTRY)&_ZN10S2261C4_nt3v15Ev,
+  (VTBL_ENTRY)&_ZN10S2261C4_nt3v16Ev,
+  (VTBL_ENTRY)&_ZN10S2261C4_nt3v17Ev,
+  (VTBL_ENTRY)&_ZN10S2261C4_nt3v18Ev,
+  (VTBL_ENTRY)&_ZN10S2261C4_nt3v19Ev,
+  (VTBL_ENTRY)&_ZN10S2261C4_nt3v20Ev,
+  (VTBL_ENTRY)&_ZN10S2261C4_nt3v21Ev,
+  (VTBL_ENTRY)&_ZN10S2261C4_nt3v22Ev,
+  (VTBL_ENTRY)&_ZN10S2261C4_nt3v23Ev,
+  (VTBL_ENTRY)&_ZN10S2261C4_nt3v24Ev,
+  (VTBL_ENTRY)&_ZN10S2261C4_nt3v25Ev,
+  (VTBL_ENTRY)&_ZN10S2261C4_nt3v26Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v27Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v28Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v29Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v30Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v31Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v32Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v33Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v34Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v35Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v36Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v37Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v38Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v39Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v40Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v41Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v42Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v43Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v44Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v45Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v46Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v47Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v48Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v49Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v50Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v51Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v52Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v53Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v54Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v55Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v56Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v57Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v58Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v59Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v60Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v61Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v62Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v63Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v64Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v65Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v66Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v67Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v68Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v69Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v70Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v71Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v72Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v73Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v74Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v75Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v76Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v77Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v78Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v79Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v80Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v81Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v82Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v83Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v84Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v85Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v86Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v87Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v88Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v89Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v90Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v91Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v92Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v93Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v94Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v95Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v96Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v97Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v98Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v99Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt4v100Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt4v101Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt4v102Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt4v103Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt4v104Ev,
+};
+extern VTBL_ENTRY _ZTI10S2261C3_nt[];
+VTBL_ENTRY *P__ZTI10S2261C3_nt = _ZTI10S2261C3_nt; 
+extern  VTBL_ENTRY _ZTV10S2261C3_nt[];
+Class_Descriptor cd_S2261C3_nt = {  "S2261C3_nt", // class name
+  bases_S2261C3_nt, 1,
+  &(vtc_S2261C3_nt[0]), // expected_vtbl_contents
+  0, //no vtt
+  ABISELECT(832,632), // object size
+  NSPAIRA(_ZTI10S2261C3_nt),ABISELECT(24,12), //typeinfo_var
+  NSPAIRA(_ZTV10S2261C3_nt),105, //virtual function table var
+  2, // offset into main vftv pointed to by object[0]
+  {0,0},0, // virtual table table var
+  1, // n_initialized_bases
+  0, // has_virtual_bases
+  1, // has_class_type_fields
+  0, // alt-thunk-names
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S2261C2_nt  : S2261C3_nt {
+  void *s2261c2f0;
+  virtual  ~S2261C2_nt(); // _ZN10S2261C2_ntD1Ev
+  virtual void  v105(); // _ZN10S2261C2_nt4v105Ev
+  virtual void  v106(); // _ZN10S2261C2_nt4v106Ev
+  virtual void  v107(); // _ZN10S2261C2_nt4v107Ev
+  virtual void  v108(); // _ZN10S2261C2_nt4v108Ev
+  virtual void  v109(); // _ZN10S2261C2_nt4v109Ev
+  virtual void  v110(); // _ZN10S2261C2_nt4v110Ev
+  virtual void  v111(); // _ZN10S2261C2_nt4v111Ev
+  virtual void  v112(); // _ZN10S2261C2_nt4v112Ev
+  virtual void  v113(); // _ZN10S2261C2_nt4v113Ev
+  virtual void  v114(); // _ZN10S2261C2_nt4v114Ev
+  S2261C2_nt(); // tgen
+};
+//SIG(-1 S2261C2_nt) C1{ BC2{ BC3{ vd v11 v12 v13 v14 v15 v16 v17 v18 v19 v20 v21 v22 v23 v24 v25 v26 v27 v28 v29 v30 v31 v32 v33 Fp Fi FC4{ BC5{ m Fp Fi FC6{ m} FC7{ m}}} FC4 Fi} vd v34 v35 v36 v37 v38 v39 v40 v41 v42 v43 v44 v45 v46 v47 v48 v49 v50 v51 v52 v53 v54 v55 v56 v57 v58 v59 v60 v61 v62 v63 v64 v65 v66 v67 v68 v69 v70 v71 v72 v73 v74 v75 v76 v77 v78 v79 v80 v81 v82 v83 v84 v85 v86 v87 v88 v89 v90 v91 v92 v93 v94 v95 v96 v97 v98 v99 v100 v101 v102 v103 v104 v105 v106 v107 v108 v109 v110 v111 FC8{ m FC9{ m FL[2]}} FC8 FC8 FC8 FC10{ m FC8} FC11{ m FC8 FC8 FC8 FC8} FC11 FC8 FC8 FC8 Fp FC10 FC12{ m FC13{ m Fp Fi FC7} Fi} Fi Fp[7] FC14{ m Fp Fi FC15{ m} FC15} Fi:8 Fi:8 Fi:16 Fi:16 Fi:8 Fi:8 Fi:8 Fi:32 Fi:8 Fi:4 Fi:4 Fi:4 Fi:4 Fi:4 Fi:4 Fi:4 Fi:4 Fi:4 Fi:4 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fi[7] Fp[6] !
 Fi:8 Fi:8
  Fi:8 Fi:8 Fi:8 Fi:8 FC16{ BC17{ m Fp Fi FC18{ m} FC18}} Fp[4] Fi:8 Fi:8 Fi:8 Fi:8 Fi:8 Fi:16 Fi:16 Fi:16 Fi:4 Fi:4 Fi:4 Fi:4 Fi:4 Fi:4 Fi:4 Fi:4 Fi:4 Fi:4 Fi:4 Fi:4 Fi:8 Fi:8 Fi:8 Fp[7] FC19{ m Fp Fi[2] FC20{ m}} Fp[2] Fi:16 Fi:16 FC16 FC19 FC21{ m Fp Fi[2] FC20} Fp[2] Fi:24 Fi:8 Fp} vd v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 Fp}
+
+
+ S2261C2_nt ::~S2261C2_nt(){ note_dtor("S2261C2_nt", this);}
+void  S2261C2_nt ::v105(){vfunc_called(this, "_ZN10S2261C2_nt4v105Ev");}
+void  S2261C2_nt ::v106(){vfunc_called(this, "_ZN10S2261C2_nt4v106Ev");}
+void  S2261C2_nt ::v107(){vfunc_called(this, "_ZN10S2261C2_nt4v107Ev");}
+void  S2261C2_nt ::v108(){vfunc_called(this, "_ZN10S2261C2_nt4v108Ev");}
+void  S2261C2_nt ::v109(){vfunc_called(this, "_ZN10S2261C2_nt4v109Ev");}
+void  S2261C2_nt ::v110(){vfunc_called(this, "_ZN10S2261C2_nt4v110Ev");}
+void  S2261C2_nt ::v111(){vfunc_called(this, "_ZN10S2261C2_nt4v111Ev");}
+void  S2261C2_nt ::v112(){vfunc_called(this, "_ZN10S2261C2_nt4v112Ev");}
+void  S2261C2_nt ::v113(){vfunc_called(this, "_ZN10S2261C2_nt4v113Ev");}
+void  S2261C2_nt ::v114(){vfunc_called(this, "_ZN10S2261C2_nt4v114Ev");}
+S2261C2_nt ::S2261C2_nt(){ note_ctor("S2261C2_nt", this);} // tgen
+
+//skip512 S2261C2_nt
+
+#else // __cplusplus
+
+extern void _ZN10S2261C2_ntC1Ev();
+extern void _ZN10S2261C2_ntD1Ev();
+Name_Map name_map_S2261C2_nt[] = {
+  NSPAIR(_ZN10S2261C2_ntC1Ev),
+  NSPAIR(_ZN10S2261C2_ntD1Ev),
+  {0,0}
+};
+extern Class_Descriptor cd_S2261C4_nt;
+extern VTBL_ENTRY _ZTI10S2261C4_nt[];
+extern  VTBL_ENTRY _ZTV10S2261C4_nt[];
+extern Class_Descriptor cd_S2261C3_nt;
+extern VTBL_ENTRY _ZTI10S2261C3_nt[];
+extern  VTBL_ENTRY _ZTV10S2261C3_nt[];
+static Base_Class bases_S2261C2_nt[] = {
+  // ofst, vfto, nneg, vtt_idx, base_vtt_idx, init_seq, direct, virtual
+  {&cd_S2261C4_nt,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    1, //init_seq
+    1, //immediately_derived
+  0, 0},
+  {&cd_S2261C3_nt,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    2, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {0}};
+extern VTBL_ENTRY _ZTI10S2261C2_nt[];
+extern void _ZN10S2261C2_ntD1Ev();
+extern void _ZN10S2261C2_ntD0Ev();
+extern void _ZN10S2261C4_nt2v4Ev();
+extern void _ZN10S2261C4_nt2v5Ev();
+extern void _ZN10S2261C4_nt2v6Ev();
+extern void _ZN10S2261C4_nt2v7Ev();
+extern void _ZN10S2261C4_nt2v8Ev();
+extern void _ZN10S2261C4_nt2v9Ev();
+extern void _ZN10S2261C4_nt3v10Ev();
+extern void _ZN10S2261C4_nt3v11Ev();
+extern void _ZN10S2261C4_nt3v12Ev();
+extern void _ZN10S2261C4_nt3v13Ev();
+extern void _ZN10S2261C4_nt3v14Ev();
+extern void _ZN10S2261C4_nt3v15Ev();
+extern void _ZN10S2261C4_nt3v16Ev();
+extern void _ZN10S2261C4_nt3v17Ev();
+extern void _ZN10S2261C4_nt3v18Ev();
+extern void _ZN10S2261C4_nt3v19Ev();
+extern void _ZN10S2261C4_nt3v20Ev();
+extern void _ZN10S2261C4_nt3v21Ev();
+extern void _ZN10S2261C4_nt3v22Ev();
+extern void _ZN10S2261C4_nt3v23Ev();
+extern void _ZN10S2261C4_nt3v24Ev();
+extern void _ZN10S2261C4_nt3v25Ev();
+extern void _ZN10S2261C4_nt3v26Ev();
+extern void _ZN10S2261C3_nt3v27Ev();
+extern void _ZN10S2261C3_nt3v28Ev();
+extern void _ZN10S2261C3_nt3v29Ev();
+extern void _ZN10S2261C3_nt3v30Ev();
+extern void _ZN10S2261C3_nt3v31Ev();
+extern void _ZN10S2261C3_nt3v32Ev();
+extern void _ZN10S2261C3_nt3v33Ev();
+extern void _ZN10S2261C3_nt3v34Ev();
+extern void _ZN10S2261C3_nt3v35Ev();
+extern void _ZN10S2261C3_nt3v36Ev();
+extern void _ZN10S2261C3_nt3v37Ev();
+extern void _ZN10S2261C3_nt3v38Ev();
+extern void _ZN10S2261C3_nt3v39Ev();
+extern void _ZN10S2261C3_nt3v40Ev();
+extern void _ZN10S2261C3_nt3v41Ev();
+extern void _ZN10S2261C3_nt3v42Ev();
+extern void _ZN10S2261C3_nt3v43Ev();
+extern void _ZN10S2261C3_nt3v44Ev();
+extern void _ZN10S2261C3_nt3v45Ev();
+extern void _ZN10S2261C3_nt3v46Ev();
+extern void _ZN10S2261C3_nt3v47Ev();
+extern void _ZN10S2261C3_nt3v48Ev();
+extern void _ZN10S2261C3_nt3v49Ev();
+extern void _ZN10S2261C3_nt3v50Ev();
+extern void _ZN10S2261C3_nt3v51Ev();
+extern void _ZN10S2261C3_nt3v52Ev();
+extern void _ZN10S2261C3_nt3v53Ev();
+extern void _ZN10S2261C3_nt3v54Ev();
+extern void _ZN10S2261C3_nt3v55Ev();
+extern void _ZN10S2261C3_nt3v56Ev();
+extern void _ZN10S2261C3_nt3v57Ev();
+extern void _ZN10S2261C3_nt3v58Ev();
+extern void _ZN10S2261C3_nt3v59Ev();
+extern void _ZN10S2261C3_nt3v60Ev();
+extern void _ZN10S2261C3_nt3v61Ev();
+extern void _ZN10S2261C3_nt3v62Ev();
+extern void _ZN10S2261C3_nt3v63Ev();
+extern void _ZN10S2261C3_nt3v64Ev();
+extern void _ZN10S2261C3_nt3v65Ev();
+extern void _ZN10S2261C3_nt3v66Ev();
+extern void _ZN10S2261C3_nt3v67Ev();
+extern void _ZN10S2261C3_nt3v68Ev();
+extern void _ZN10S2261C3_nt3v69Ev();
+extern void _ZN10S2261C3_nt3v70Ev();
+extern void _ZN10S2261C3_nt3v71Ev();
+extern void _ZN10S2261C3_nt3v72Ev();
+extern void _ZN10S2261C3_nt3v73Ev();
+extern void _ZN10S2261C3_nt3v74Ev();
+extern void _ZN10S2261C3_nt3v75Ev();
+extern void _ZN10S2261C3_nt3v76Ev();
+extern void _ZN10S2261C3_nt3v77Ev();
+extern void _ZN10S2261C3_nt3v78Ev();
+extern void _ZN10S2261C3_nt3v79Ev();
+extern void _ZN10S2261C3_nt3v80Ev();
+extern void _ZN10S2261C3_nt3v81Ev();
+extern void _ZN10S2261C3_nt3v82Ev();
+extern void _ZN10S2261C3_nt3v83Ev();
+extern void _ZN10S2261C3_nt3v84Ev();
+extern void _ZN10S2261C3_nt3v85Ev();
+extern void _ZN10S2261C3_nt3v86Ev();
+extern void _ZN10S2261C3_nt3v87Ev();
+extern void _ZN10S2261C3_nt3v88Ev();
+extern void _ZN10S2261C3_nt3v89Ev();
+extern void _ZN10S2261C3_nt3v90Ev();
+extern void _ZN10S2261C3_nt3v91Ev();
+extern void _ZN10S2261C3_nt3v92Ev();
+extern void _ZN10S2261C3_nt3v93Ev();
+extern void _ZN10S2261C3_nt3v94Ev();
+extern void _ZN10S2261C3_nt3v95Ev();
+extern void _ZN10S2261C3_nt3v96Ev();
+extern void _ZN10S2261C3_nt3v97Ev();
+extern void _ZN10S2261C3_nt3v98Ev();
+extern void _ZN10S2261C3_nt3v99Ev();
+extern void _ZN10S2261C3_nt4v100Ev();
+extern void _ZN10S2261C3_nt4v101Ev();
+extern void _ZN10S2261C3_nt4v102Ev();
+extern void _ZN10S2261C3_nt4v103Ev();
+extern void _ZN10S2261C3_nt4v104Ev();
+extern void _ZN10S2261C2_nt4v105Ev();
+extern void _ZN10S2261C2_nt4v106Ev();
+extern void _ZN10S2261C2_nt4v107Ev();
+extern void _ZN10S2261C2_nt4v108Ev();
+extern void _ZN10S2261C2_nt4v109Ev();
+extern void _ZN10S2261C2_nt4v110Ev();
+extern void _ZN10S2261C2_nt4v111Ev();
+extern void _ZN10S2261C2_nt4v112Ev();
+extern void _ZN10S2261C2_nt4v113Ev();
+extern void _ZN10S2261C2_nt4v114Ev();
+static  VTBL_ENTRY vtc_S2261C2_nt[] = {
+  0,
+  (VTBL_ENTRY)&(_ZTI10S2261C2_nt[0]),
+  (VTBL_ENTRY)&_ZN10S2261C2_ntD1Ev,
+  (VTBL_ENTRY)&_ZN10S2261C2_ntD0Ev,
+  (VTBL_ENTRY)&_ZN10S2261C4_nt2v4Ev,
+  (VTBL_ENTRY)&_ZN10S2261C4_nt2v5Ev,
+  (VTBL_ENTRY)&_ZN10S2261C4_nt2v6Ev,
+  (VTBL_ENTRY)&_ZN10S2261C4_nt2v7Ev,
+  (VTBL_ENTRY)&_ZN10S2261C4_nt2v8Ev,
+  (VTBL_ENTRY)&_ZN10S2261C4_nt2v9Ev,
+  (VTBL_ENTRY)&_ZN10S2261C4_nt3v10Ev,
+  (VTBL_ENTRY)&_ZN10S2261C4_nt3v11Ev,
+  (VTBL_ENTRY)&_ZN10S2261C4_nt3v12Ev,
+  (VTBL_ENTRY)&_ZN10S2261C4_nt3v13Ev,
+  (VTBL_ENTRY)&_ZN10S2261C4_nt3v14Ev,
+  (VTBL_ENTRY)&_ZN10S2261C4_nt3v15Ev,
+  (VTBL_ENTRY)&_ZN10S2261C4_nt3v16Ev,
+  (VTBL_ENTRY)&_ZN10S2261C4_nt3v17Ev,
+  (VTBL_ENTRY)&_ZN10S2261C4_nt3v18Ev,
+  (VTBL_ENTRY)&_ZN10S2261C4_nt3v19Ev,
+  (VTBL_ENTRY)&_ZN10S2261C4_nt3v20Ev,
+  (VTBL_ENTRY)&_ZN10S2261C4_nt3v21Ev,
+  (VTBL_ENTRY)&_ZN10S2261C4_nt3v22Ev,
+  (VTBL_ENTRY)&_ZN10S2261C4_nt3v23Ev,
+  (VTBL_ENTRY)&_ZN10S2261C4_nt3v24Ev,
+  (VTBL_ENTRY)&_ZN10S2261C4_nt3v25Ev,
+  (VTBL_ENTRY)&_ZN10S2261C4_nt3v26Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v27Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v28Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v29Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v30Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v31Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v32Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v33Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v34Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v35Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v36Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v37Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v38Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v39Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v40Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v41Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v42Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v43Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v44Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v45Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v46Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v47Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v48Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v49Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v50Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v51Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v52Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v53Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v54Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v55Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v56Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v57Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v58Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v59Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v60Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v61Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v62Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v63Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v64Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v65Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v66Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v67Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v68Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v69Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v70Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v71Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v72Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v73Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v74Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v75Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v76Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v77Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v78Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v79Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v80Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v81Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v82Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v83Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v84Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v85Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v86Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v87Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v88Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v89Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v90Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v91Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v92Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v93Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v94Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v95Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v96Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v97Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v98Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v99Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt4v100Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt4v101Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt4v102Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt4v103Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt4v104Ev,
+  (VTBL_ENTRY)&_ZN10S2261C2_nt4v105Ev,
+  (VTBL_ENTRY)&_ZN10S2261C2_nt4v106Ev,
+  (VTBL_ENTRY)&_ZN10S2261C2_nt4v107Ev,
+  (VTBL_ENTRY)&_ZN10S2261C2_nt4v108Ev,
+  (VTBL_ENTRY)&_ZN10S2261C2_nt4v109Ev,
+  (VTBL_ENTRY)&_ZN10S2261C2_nt4v110Ev,
+  (VTBL_ENTRY)&_ZN10S2261C2_nt4v111Ev,
+  (VTBL_ENTRY)&_ZN10S2261C2_nt4v112Ev,
+  (VTBL_ENTRY)&_ZN10S2261C2_nt4v113Ev,
+  (VTBL_ENTRY)&_ZN10S2261C2_nt4v114Ev,
+};
+extern VTBL_ENTRY _ZTI10S2261C2_nt[];
+VTBL_ENTRY *P__ZTI10S2261C2_nt = _ZTI10S2261C2_nt; 
+extern  VTBL_ENTRY _ZTV10S2261C2_nt[];
+Class_Descriptor cd_S2261C2_nt = {  "S2261C2_nt", // class name
+  bases_S2261C2_nt, 2,
+  &(vtc_S2261C2_nt[0]), // expected_vtbl_contents
+  0, //no vtt
+  ABISELECT(840,636), // object size
+  NSPAIRA(_ZTI10S2261C2_nt),ABISELECT(24,12), //typeinfo_var
+  NSPAIRA(_ZTV10S2261C2_nt),115, //virtual function table var
+  2, // offset into main vftv pointed to by object[0]
+  {0,0},0, // virtual table table var
+  2, // n_initialized_bases
+  0, // has_virtual_bases
+  1, // has_class_type_fields
+  0, // alt-thunk-names
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S2261C1  : S2261C2_nt {
+  void *s2261c1f0;
+  int s2261c1f1;
+  void *s2261c1f2;
+  int s2261c1f3[4];
+  virtual  ~S2261C1(); // _ZN7S2261C1D1Ev
+  virtual void  v1(); // _ZN7S2261C12v1Ev
+  virtual void  v2(); // _ZN7S2261C12v2Ev
+  virtual void  v3(); // _ZN7S2261C12v3Ev
+  S2261C1(); // tgen
+};
+//SIG(1 S2261C1) C1{ BC2{ BC3{ BC4{ vd v4 v5 v6 v7 v8 v9 v10 v11 v12 v13 v14 v15 v16 v17 v18 v19 v20 v21 v22 v23 v24 v25 v26 Fp Fi FC5{ BC6{ m Fp Fi FC7{ m} FC8{ m}}} FC5 Fi} vd v27 v28 v29 v30 v31 v32 v33 v34 v35 v36 v37 v38 v39 v40 v41 v42 v43 v44 v45 v46 v47 v48 v49 v50 v51 v52 v53 v54 v55 v56 v57 v58 v59 v60 v61 v62 v63 v64 v65 v66 v67 v68 v69 v70 v71 v72 v73 v74 v75 v76 v77 v78 v79 v80 v81 v82 v83 v84 v85 v86 v87 v88 v89 v90 v91 v92 v93 v94 v95 v96 v97 v98 v99 v100 v101 v102 v103 v104 FC9{ m FC10{ m FL[2]}} FC9 FC9 FC9 FC11{ m FC9} FC12{ m FC9 FC9 FC9 FC9} FC12 FC9 FC9 FC9 Fp FC11 FC13{ m FC14{ m Fp Fi FC8} Fi} Fi Fp[7] FC15{ m Fp Fi FC16{ m} FC16} Fi:8 Fi:8 Fi:16 Fi:16 Fi:8 Fi:8 Fi:8 Fi:32 Fi:8 Fi:4 Fi:4 Fi:4 Fi:4 Fi:4 Fi:4 Fi:4 Fi:4 Fi:4 Fi:4 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fc:1 Fi[7] Fp[6] Fi:8 Fi:8 F!
 i:8 Fi:8 
 Fi:8 Fi:8 FC17{ BC18{ m Fp Fi FC19{ m} FC19}} Fp[4] Fi:8 Fi:8 Fi:8 Fi:8 Fi:8 Fi:16 Fi:16 Fi:16 Fi:4 Fi:4 Fi:4 Fi:4 Fi:4 Fi:4 Fi:4 Fi:4 Fi:4 Fi:4 Fi:4 Fi:4 Fi:8 Fi:8 Fi:8 Fp[7] FC20{ m Fp Fi[2] FC21{ m}} Fp[2] Fi:16 Fi:16 FC17 FC20 FC22{ m Fp Fi[2] FC21} Fp[2] Fi:24 Fi:8 Fp} vd v105 v106 v107 v108 v109 v110 v111 v112 v113 v114 Fp} vd v1 v2 v3 Fp Fi Fp Fi[4]}
+
+
+ S2261C1 ::~S2261C1(){ note_dtor("S2261C1", this);}
+void  S2261C1 ::v1(){vfunc_called(this, "_ZN7S2261C12v1Ev");}
+void  S2261C1 ::v2(){vfunc_called(this, "_ZN7S2261C12v2Ev");}
+void  S2261C1 ::v3(){vfunc_called(this, "_ZN7S2261C12v3Ev");}
+S2261C1 ::S2261C1(){ note_ctor("S2261C1", this);} // tgen
+
+static void Test_S2261C1()
+{
+  extern Class_Descriptor cd_S2261C1;
+  void *lvp;
+  {
+    ABISELECT(double,int) buf[ABISELECT(111,167)];
+    init_test(&cd_S2261C1, buf);
+    S2261C1 *dp, &lv = *(dp=new (buf) S2261C1());
+    lvp = (void*)&lv;
+    check2(sizeof(lv), ABISELECT(880,664), "sizeof(S2261C1)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S2261C1)");
+    check_base_class_offset(lv, (S2261C4_nt*)(S2261C3_nt*)(S2261C2_nt*), 0, "S2261C1");
+    check_base_class_offset(lv, (S2261C3_nt*)(S2261C2_nt*), 0, "S2261C1");
+    check_base_class_offset(lv, (S2261C2_nt*), 0, "S2261C1");
+    check_field_offset(lv, s2261c1f0, ABISELECT(840,636), "S2261C1.s2261c1f0");
+    check_field_offset(lv, s2261c1f1, ABISELECT(848,640), "S2261C1.s2261c1f1");
+    check_field_offset(lv, s2261c1f2, ABISELECT(856,644), "S2261C1.s2261c1f2");
+    check_field_offset(lv, s2261c1f3, ABISELECT(864,648), "S2261C1.s2261c1f3");
+    test_class_info(&lv, &cd_S2261C1);
+    dp->~S2261C1();
+  }
+  Check_Ctor_Dtor_Calls(lvp);
+}
+static Arrange_To_Call_Me vS2261C1(Test_S2261C1, "S2261C1", ABISELECT(880,664));
+
+#else // __cplusplus
+
+extern void _ZN7S2261C1C1Ev();
+extern void _ZN7S2261C1D1Ev();
+Name_Map name_map_S2261C1[] = {
+  NSPAIR(_ZN7S2261C1C1Ev),
+  NSPAIR(_ZN7S2261C1D1Ev),
+  {0,0}
+};
+extern Class_Descriptor cd_S2261C4_nt;
+extern VTBL_ENTRY _ZTI10S2261C4_nt[];
+extern  VTBL_ENTRY _ZTV10S2261C4_nt[];
+extern Class_Descriptor cd_S2261C3_nt;
+extern VTBL_ENTRY _ZTI10S2261C3_nt[];
+extern  VTBL_ENTRY _ZTV10S2261C3_nt[];
+extern Class_Descriptor cd_S2261C2_nt;
+extern VTBL_ENTRY _ZTI10S2261C2_nt[];
+extern  VTBL_ENTRY _ZTV10S2261C2_nt[];
+static Base_Class bases_S2261C1[] = {
+  // ofst, vfto, nneg, vtt_idx, base_vtt_idx, init_seq, direct, virtual
+  {&cd_S2261C4_nt,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    1, //init_seq
+    1, //immediately_derived
+  0, 0},
+  {&cd_S2261C3_nt,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    2, //init_seq
+    2, //immediately_derived
+  0, 0},
+  {&cd_S2261C2_nt,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    3, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {0}};
+extern VTBL_ENTRY _ZTI7S2261C1[];
+extern void _ZN7S2261C1D1Ev();
+extern void _ZN7S2261C1D0Ev();
+extern void _ZN10S2261C4_nt2v4Ev();
+extern void _ZN10S2261C4_nt2v5Ev();
+extern void _ZN10S2261C4_nt2v6Ev();
+extern void _ZN10S2261C4_nt2v7Ev();
+extern void _ZN10S2261C4_nt2v8Ev();
+extern void _ZN10S2261C4_nt2v9Ev();
+extern void _ZN10S2261C4_nt3v10Ev();
+extern void _ZN10S2261C4_nt3v11Ev();
+extern void _ZN10S2261C4_nt3v12Ev();
+extern void _ZN10S2261C4_nt3v13Ev();
+extern void _ZN10S2261C4_nt3v14Ev();
+extern void _ZN10S2261C4_nt3v15Ev();
+extern void _ZN10S2261C4_nt3v16Ev();
+extern void _ZN10S2261C4_nt3v17Ev();
+extern void _ZN10S2261C4_nt3v18Ev();
+extern void _ZN10S2261C4_nt3v19Ev();
+extern void _ZN10S2261C4_nt3v20Ev();
+extern void _ZN10S2261C4_nt3v21Ev();
+extern void _ZN10S2261C4_nt3v22Ev();
+extern void _ZN10S2261C4_nt3v23Ev();
+extern void _ZN10S2261C4_nt3v24Ev();
+extern void _ZN10S2261C4_nt3v25Ev();
+extern void _ZN10S2261C4_nt3v26Ev();
+extern void _ZN10S2261C3_nt3v27Ev();
+extern void _ZN10S2261C3_nt3v28Ev();
+extern void _ZN10S2261C3_nt3v29Ev();
+extern void _ZN10S2261C3_nt3v30Ev();
+extern void _ZN10S2261C3_nt3v31Ev();
+extern void _ZN10S2261C3_nt3v32Ev();
+extern void _ZN10S2261C3_nt3v33Ev();
+extern void _ZN10S2261C3_nt3v34Ev();
+extern void _ZN10S2261C3_nt3v35Ev();
+extern void _ZN10S2261C3_nt3v36Ev();
+extern void _ZN10S2261C3_nt3v37Ev();
+extern void _ZN10S2261C3_nt3v38Ev();
+extern void _ZN10S2261C3_nt3v39Ev();
+extern void _ZN10S2261C3_nt3v40Ev();
+extern void _ZN10S2261C3_nt3v41Ev();
+extern void _ZN10S2261C3_nt3v42Ev();
+extern void _ZN10S2261C3_nt3v43Ev();
+extern void _ZN10S2261C3_nt3v44Ev();
+extern void _ZN10S2261C3_nt3v45Ev();
+extern void _ZN10S2261C3_nt3v46Ev();
+extern void _ZN10S2261C3_nt3v47Ev();
+extern void _ZN10S2261C3_nt3v48Ev();
+extern void _ZN10S2261C3_nt3v49Ev();
+extern void _ZN10S2261C3_nt3v50Ev();
+extern void _ZN10S2261C3_nt3v51Ev();
+extern void _ZN10S2261C3_nt3v52Ev();
+extern void _ZN10S2261C3_nt3v53Ev();
+extern void _ZN10S2261C3_nt3v54Ev();
+extern void _ZN10S2261C3_nt3v55Ev();
+extern void _ZN10S2261C3_nt3v56Ev();
+extern void _ZN10S2261C3_nt3v57Ev();
+extern void _ZN10S2261C3_nt3v58Ev();
+extern void _ZN10S2261C3_nt3v59Ev();
+extern void _ZN10S2261C3_nt3v60Ev();
+extern void _ZN10S2261C3_nt3v61Ev();
+extern void _ZN10S2261C3_nt3v62Ev();
+extern void _ZN10S2261C3_nt3v63Ev();
+extern void _ZN10S2261C3_nt3v64Ev();
+extern void _ZN10S2261C3_nt3v65Ev();
+extern void _ZN10S2261C3_nt3v66Ev();
+extern void _ZN10S2261C3_nt3v67Ev();
+extern void _ZN10S2261C3_nt3v68Ev();
+extern void _ZN10S2261C3_nt3v69Ev();
+extern void _ZN10S2261C3_nt3v70Ev();
+extern void _ZN10S2261C3_nt3v71Ev();
+extern void _ZN10S2261C3_nt3v72Ev();
+extern void _ZN10S2261C3_nt3v73Ev();
+extern void _ZN10S2261C3_nt3v74Ev();
+extern void _ZN10S2261C3_nt3v75Ev();
+extern void _ZN10S2261C3_nt3v76Ev();
+extern void _ZN10S2261C3_nt3v77Ev();
+extern void _ZN10S2261C3_nt3v78Ev();
+extern void _ZN10S2261C3_nt3v79Ev();
+extern void _ZN10S2261C3_nt3v80Ev();
+extern void _ZN10S2261C3_nt3v81Ev();
+extern void _ZN10S2261C3_nt3v82Ev();
+extern void _ZN10S2261C3_nt3v83Ev();
+extern void _ZN10S2261C3_nt3v84Ev();
+extern void _ZN10S2261C3_nt3v85Ev();
+extern void _ZN10S2261C3_nt3v86Ev();
+extern void _ZN10S2261C3_nt3v87Ev();
+extern void _ZN10S2261C3_nt3v88Ev();
+extern void _ZN10S2261C3_nt3v89Ev();
+extern void _ZN10S2261C3_nt3v90Ev();
+extern void _ZN10S2261C3_nt3v91Ev();
+extern void _ZN10S2261C3_nt3v92Ev();
+extern void _ZN10S2261C3_nt3v93Ev();
+extern void _ZN10S2261C3_nt3v94Ev();
+extern void _ZN10S2261C3_nt3v95Ev();
+extern void _ZN10S2261C3_nt3v96Ev();
+extern void _ZN10S2261C3_nt3v97Ev();
+extern void _ZN10S2261C3_nt3v98Ev();
+extern void _ZN10S2261C3_nt3v99Ev();
+extern void _ZN10S2261C3_nt4v100Ev();
+extern void _ZN10S2261C3_nt4v101Ev();
+extern void _ZN10S2261C3_nt4v102Ev();
+extern void _ZN10S2261C3_nt4v103Ev();
+extern void _ZN10S2261C3_nt4v104Ev();
+extern void _ZN10S2261C2_nt4v105Ev();
+extern void _ZN10S2261C2_nt4v106Ev();
+extern void _ZN10S2261C2_nt4v107Ev();
+extern void _ZN10S2261C2_nt4v108Ev();
+extern void _ZN10S2261C2_nt4v109Ev();
+extern void _ZN10S2261C2_nt4v110Ev();
+extern void _ZN10S2261C2_nt4v111Ev();
+extern void _ZN10S2261C2_nt4v112Ev();
+extern void _ZN10S2261C2_nt4v113Ev();
+extern void _ZN10S2261C2_nt4v114Ev();
+extern void _ZN7S2261C12v1Ev();
+extern void _ZN7S2261C12v2Ev();
+extern void _ZN7S2261C12v3Ev();
+static  VTBL_ENTRY vtc_S2261C1[] = {
+  0,
+  (VTBL_ENTRY)&(_ZTI7S2261C1[0]),
+  (VTBL_ENTRY)&_ZN7S2261C1D1Ev,
+  (VTBL_ENTRY)&_ZN7S2261C1D0Ev,
+  (VTBL_ENTRY)&_ZN10S2261C4_nt2v4Ev,
+  (VTBL_ENTRY)&_ZN10S2261C4_nt2v5Ev,
+  (VTBL_ENTRY)&_ZN10S2261C4_nt2v6Ev,
+  (VTBL_ENTRY)&_ZN10S2261C4_nt2v7Ev,
+  (VTBL_ENTRY)&_ZN10S2261C4_nt2v8Ev,
+  (VTBL_ENTRY)&_ZN10S2261C4_nt2v9Ev,
+  (VTBL_ENTRY)&_ZN10S2261C4_nt3v10Ev,
+  (VTBL_ENTRY)&_ZN10S2261C4_nt3v11Ev,
+  (VTBL_ENTRY)&_ZN10S2261C4_nt3v12Ev,
+  (VTBL_ENTRY)&_ZN10S2261C4_nt3v13Ev,
+  (VTBL_ENTRY)&_ZN10S2261C4_nt3v14Ev,
+  (VTBL_ENTRY)&_ZN10S2261C4_nt3v15Ev,
+  (VTBL_ENTRY)&_ZN10S2261C4_nt3v16Ev,
+  (VTBL_ENTRY)&_ZN10S2261C4_nt3v17Ev,
+  (VTBL_ENTRY)&_ZN10S2261C4_nt3v18Ev,
+  (VTBL_ENTRY)&_ZN10S2261C4_nt3v19Ev,
+  (VTBL_ENTRY)&_ZN10S2261C4_nt3v20Ev,
+  (VTBL_ENTRY)&_ZN10S2261C4_nt3v21Ev,
+  (VTBL_ENTRY)&_ZN10S2261C4_nt3v22Ev,
+  (VTBL_ENTRY)&_ZN10S2261C4_nt3v23Ev,
+  (VTBL_ENTRY)&_ZN10S2261C4_nt3v24Ev,
+  (VTBL_ENTRY)&_ZN10S2261C4_nt3v25Ev,
+  (VTBL_ENTRY)&_ZN10S2261C4_nt3v26Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v27Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v28Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v29Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v30Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v31Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v32Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v33Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v34Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v35Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v36Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v37Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v38Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v39Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v40Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v41Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v42Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v43Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v44Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v45Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v46Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v47Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v48Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v49Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v50Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v51Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v52Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v53Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v54Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v55Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v56Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v57Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v58Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v59Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v60Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v61Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v62Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v63Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v64Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v65Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v66Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v67Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v68Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v69Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v70Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v71Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v72Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v73Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v74Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v75Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v76Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v77Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v78Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v79Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v80Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v81Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v82Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v83Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v84Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v85Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v86Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v87Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v88Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v89Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v90Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v91Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v92Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v93Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v94Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v95Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v96Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v97Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v98Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt3v99Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt4v100Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt4v101Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt4v102Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt4v103Ev,
+  (VTBL_ENTRY)&_ZN10S2261C3_nt4v104Ev,
+  (VTBL_ENTRY)&_ZN10S2261C2_nt4v105Ev,
+  (VTBL_ENTRY)&_ZN10S2261C2_nt4v106Ev,
+  (VTBL_ENTRY)&_ZN10S2261C2_nt4v107Ev,
+  (VTBL_ENTRY)&_ZN10S2261C2_nt4v108Ev,
+  (VTBL_ENTRY)&_ZN10S2261C2_nt4v109Ev,
+  (VTBL_ENTRY)&_ZN10S2261C2_nt4v110Ev,
+  (VTBL_ENTRY)&_ZN10S2261C2_nt4v111Ev,
+  (VTBL_ENTRY)&_ZN10S2261C2_nt4v112Ev,
+  (VTBL_ENTRY)&_ZN10S2261C2_nt4v113Ev,
+  (VTBL_ENTRY)&_ZN10S2261C2_nt4v114Ev,
+  (VTBL_ENTRY)&_ZN7S2261C12v1Ev,
+  (VTBL_ENTRY)&_ZN7S2261C12v2Ev,
+  (VTBL_ENTRY)&_ZN7S2261C12v3Ev,
+};
+extern VTBL_ENTRY _ZTI7S2261C1[];
+extern  VTBL_ENTRY _ZTV7S2261C1[];
+Class_Descriptor cd_S2261C1 = {  "S2261C1", // class name
+  bases_S2261C1, 3,
+  &(vtc_S2261C1[0]), // expected_vtbl_contents
+  0, //no vtt
+  ABISELECT(880,664), // object size
+  NSPAIRA(_ZTI7S2261C1),ABISELECT(24,12), //typeinfo_var
+  NSPAIRA(_ZTV7S2261C1),118, //virtual function table var
+  2, // offset into main vftv pointed to by object[0]
+  {0,0},0, // virtual table table var
+  3, // n_initialized_bases
+  0, // has_virtual_bases
+  1, // has_class_type_fields
+  0, // alt-thunk-names
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S6491C2  {
+  int s6491c2f0;
+  __tsi64 s6491c2f1;
+  void *s6491c2f2[4];
+  int s6491c2f3[2];
+  void *s6491c2f4;
+  ::S485C6_nt s6491c2f5;
+  void *s6491c2f6[2];
+  virtual  ~S6491C2(); // _ZN7S6491C2D1Ev
+  virtual void  v14(); // _ZN7S6491C23v14Ev
+  virtual void  v15(); // _ZN7S6491C23v15Ev
+  virtual void  v16(); // _ZN7S6491C23v16Ev
+  virtual void  v17(); // _ZN7S6491C23v17Ev
+  virtual void  v18(); // _ZN7S6491C23v18Ev
+  virtual void  v19(); // _ZN7S6491C23v19Ev
+  virtual void  v20(); // _ZN7S6491C23v20Ev
+  virtual void  v21(); // _ZN7S6491C23v21Ev
+  virtual void  v22(); // _ZN7S6491C23v22Ev
+  virtual void  v23(); // _ZN7S6491C23v23Ev
+  virtual void  v24(); // _ZN7S6491C23v24Ev
+  virtual void  v25(); // _ZN7S6491C23v25Ev
+  virtual void  v26(); // _ZN7S6491C23v26Ev
+  virtual void  v27(); // _ZN7S6491C23v27Ev
+  virtual void  v28(); // _ZN7S6491C23v28Ev
+  virtual void  v29(); // _ZN7S6491C23v29Ev
+  virtual void  v30(); // _ZN7S6491C23v30Ev
+  virtual void  v31(); // _ZN7S6491C23v31Ev
+  virtual void  v32(); // _ZN7S6491C23v32Ev
+  virtual void  v33(); // _ZN7S6491C23v33Ev
+  virtual void  v34(); // _ZN7S6491C23v34Ev
+  virtual void  v35(); // _ZN7S6491C23v35Ev
+  virtual void  v36(); // _ZN7S6491C23v36Ev
+  virtual void  v37(); // _ZN7S6491C23v37Ev
+  virtual void  v38(); // _ZN7S6491C23v38Ev
+  virtual void  v39(); // _ZN7S6491C23v39Ev
+  virtual void  v40(); // _ZN7S6491C23v40Ev
+  virtual void  v41(); // _ZN7S6491C23v41Ev
+  virtual void  v42(); // _ZN7S6491C23v42Ev
+  virtual void  v43(); // _ZN7S6491C23v43Ev
+  virtual void  v44(); // _ZN7S6491C23v44Ev
+  virtual void  v45(); // _ZN7S6491C23v45Ev
+  virtual void  v46(); // _ZN7S6491C23v46Ev
+  virtual void  v47(); // _ZN7S6491C23v47Ev
+  virtual void  v48(); // _ZN7S6491C23v48Ev
+  virtual void  v49(); // _ZN7S6491C23v49Ev
+  virtual void  v50(); // _ZN7S6491C23v50Ev
+  virtual void  v51(); // _ZN7S6491C23v51Ev
+  virtual void  v52(); // _ZN7S6491C23v52Ev
+  virtual void  v53(); // _ZN7S6491C23v53Ev
+  virtual void  v54(); // _ZN7S6491C23v54Ev
+  virtual void  v55(); // _ZN7S6491C23v55Ev
+  virtual void  v56(); // _ZN7S6491C23v56Ev
+  virtual void  v57(); // _ZN7S6491C23v57Ev
+  virtual void  v58(); // _ZN7S6491C23v58Ev
+  virtual void  v59(); // _ZN7S6491C23v59Ev
+  virtual void  v60(); // _ZN7S6491C23v60Ev
+  virtual void  v61(); // _ZN7S6491C23v61Ev
+  virtual void  v62(); // _ZN7S6491C23v62Ev
+  virtual void  v63(); // _ZN7S6491C23v63Ev
+  virtual void  v64(); // _ZN7S6491C23v64Ev
+  virtual void  v65(); // _ZN7S6491C23v65Ev
+  virtual void  v66(); // _ZN7S6491C23v66Ev
+  virtual void  v67(); // _ZN7S6491C23v67Ev
+  virtual void  v68(); // _ZN7S6491C23v68Ev
+  virtual void  v69(); // _ZN7S6491C23v69Ev
+  virtual void  v70(); // _ZN7S6491C23v70Ev
+  virtual void  v71(); // _ZN7S6491C23v71Ev
+  virtual void  v72(); // _ZN7S6491C23v72Ev
+  virtual void  v73(); // _ZN7S6491C23v73Ev
+  virtual void  v74(); // _ZN7S6491C23v74Ev
+  virtual void  v75(); // _ZN7S6491C23v75Ev
+  virtual void  v76(); // _ZN7S6491C23v76Ev
+  virtual void  v77(); // _ZN7S6491C23v77Ev
+  S6491C2(); // tgen
+};
+//SIG(-1 S6491C2) C1{ vd v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 v13 v14 v15 v16 v17 v18 v19 v20 v21 v22 v23 v24 v25 v26 v27 v28 v29 v30 v31 v32 v33 v34 v35 v36 v37 v38 v39 v40 v41 v42 v43 v44 v45 v46 v47 v48 v49 v50 v51 v52 v53 v54 v55 v56 v57 v58 v59 v60 v61 v62 v63 v64 Fi FL Fp[4] Fi[2] Fp FC2{ m Fi[2]} Fp[2]}
+
+
+ S6491C2 ::~S6491C2(){ note_dtor("S6491C2", this);}
+void  S6491C2 ::v14(){vfunc_called(this, "_ZN7S6491C23v14Ev");}
+void  S6491C2 ::v15(){vfunc_called(this, "_ZN7S6491C23v15Ev");}
+void  S6491C2 ::v16(){vfunc_called(this, "_ZN7S6491C23v16Ev");}
+void  S6491C2 ::v17(){vfunc_called(this, "_ZN7S6491C23v17Ev");}
+void  S6491C2 ::v18(){vfunc_called(this, "_ZN7S6491C23v18Ev");}
+void  S6491C2 ::v19(){vfunc_called(this, "_ZN7S6491C23v19Ev");}
+void  S6491C2 ::v20(){vfunc_called(this, "_ZN7S6491C23v20Ev");}
+void  S6491C2 ::v21(){vfunc_called(this, "_ZN7S6491C23v21Ev");}
+void  S6491C2 ::v22(){vfunc_called(this, "_ZN7S6491C23v22Ev");}
+void  S6491C2 ::v23(){vfunc_called(this, "_ZN7S6491C23v23Ev");}
+void  S6491C2 ::v24(){vfunc_called(this, "_ZN7S6491C23v24Ev");}
+void  S6491C2 ::v25(){vfunc_called(this, "_ZN7S6491C23v25Ev");}
+void  S6491C2 ::v26(){vfunc_called(this, "_ZN7S6491C23v26Ev");}
+void  S6491C2 ::v27(){vfunc_called(this, "_ZN7S6491C23v27Ev");}
+void  S6491C2 ::v28(){vfunc_called(this, "_ZN7S6491C23v28Ev");}
+void  S6491C2 ::v29(){vfunc_called(this, "_ZN7S6491C23v29Ev");}
+void  S6491C2 ::v30(){vfunc_called(this, "_ZN7S6491C23v30Ev");}
+void  S6491C2 ::v31(){vfunc_called(this, "_ZN7S6491C23v31Ev");}
+void  S6491C2 ::v32(){vfunc_called(this, "_ZN7S6491C23v32Ev");}
+void  S6491C2 ::v33(){vfunc_called(this, "_ZN7S6491C23v33Ev");}
+void  S6491C2 ::v34(){vfunc_called(this, "_ZN7S6491C23v34Ev");}
+void  S6491C2 ::v35(){vfunc_called(this, "_ZN7S6491C23v35Ev");}
+void  S6491C2 ::v36(){vfunc_called(this, "_ZN7S6491C23v36Ev");}
+void  S6491C2 ::v37(){vfunc_called(this, "_ZN7S6491C23v37Ev");}
+void  S6491C2 ::v38(){vfunc_called(this, "_ZN7S6491C23v38Ev");}
+void  S6491C2 ::v39(){vfunc_called(this, "_ZN7S6491C23v39Ev");}
+void  S6491C2 ::v40(){vfunc_called(this, "_ZN7S6491C23v40Ev");}
+void  S6491C2 ::v41(){vfunc_called(this, "_ZN7S6491C23v41Ev");}
+void  S6491C2 ::v42(){vfunc_called(this, "_ZN7S6491C23v42Ev");}
+void  S6491C2 ::v43(){vfunc_called(this, "_ZN7S6491C23v43Ev");}
+void  S6491C2 ::v44(){vfunc_called(this, "_ZN7S6491C23v44Ev");}
+void  S6491C2 ::v45(){vfunc_called(this, "_ZN7S6491C23v45Ev");}
+void  S6491C2 ::v46(){vfunc_called(this, "_ZN7S6491C23v46Ev");}
+void  S6491C2 ::v47(){vfunc_called(this, "_ZN7S6491C23v47Ev");}
+void  S6491C2 ::v48(){vfunc_called(this, "_ZN7S6491C23v48Ev");}
+void  S6491C2 ::v49(){vfunc_called(this, "_ZN7S6491C23v49Ev");}
+void  S6491C2 ::v50(){vfunc_called(this, "_ZN7S6491C23v50Ev");}
+void  S6491C2 ::v51(){vfunc_called(this, "_ZN7S6491C23v51Ev");}
+void  S6491C2 ::v52(){vfunc_called(this, "_ZN7S6491C23v52Ev");}
+void  S6491C2 ::v53(){vfunc_called(this, "_ZN7S6491C23v53Ev");}
+void  S6491C2 ::v54(){vfunc_called(this, "_ZN7S6491C23v54Ev");}
+void  S6491C2 ::v55(){vfunc_called(this, "_ZN7S6491C23v55Ev");}
+void  S6491C2 ::v56(){vfunc_called(this, "_ZN7S6491C23v56Ev");}
+void  S6491C2 ::v57(){vfunc_called(this, "_ZN7S6491C23v57Ev");}
+void  S6491C2 ::v58(){vfunc_called(this, "_ZN7S6491C23v58Ev");}
+void  S6491C2 ::v59(){vfunc_called(this, "_ZN7S6491C23v59Ev");}
+void  S6491C2 ::v60(){vfunc_called(this, "_ZN7S6491C23v60Ev");}
+void  S6491C2 ::v61(){vfunc_called(this, "_ZN7S6491C23v61Ev");}
+void  S6491C2 ::v62(){vfunc_called(this, "_ZN7S6491C23v62Ev");}
+void  S6491C2 ::v63(){vfunc_called(this, "_ZN7S6491C23v63Ev");}
+void  S6491C2 ::v64(){vfunc_called(this, "_ZN7S6491C23v64Ev");}
+void  S6491C2 ::v65(){vfunc_called(this, "_ZN7S6491C23v65Ev");}
+void  S6491C2 ::v66(){vfunc_called(this, "_ZN7S6491C23v66Ev");}
+void  S6491C2 ::v67(){vfunc_called(this, "_ZN7S6491C23v67Ev");}
+void  S6491C2 ::v68(){vfunc_called(this, "_ZN7S6491C23v68Ev");}
+void  S6491C2 ::v69(){vfunc_called(this, "_ZN7S6491C23v69Ev");}
+void  S6491C2 ::v70(){vfunc_called(this, "_ZN7S6491C23v70Ev");}
+void  S6491C2 ::v71(){vfunc_called(this, "_ZN7S6491C23v71Ev");}
+void  S6491C2 ::v72(){vfunc_called(this, "_ZN7S6491C23v72Ev");}
+void  S6491C2 ::v73(){vfunc_called(this, "_ZN7S6491C23v73Ev");}
+void  S6491C2 ::v74(){vfunc_called(this, "_ZN7S6491C23v74Ev");}
+void  S6491C2 ::v75(){vfunc_called(this, "_ZN7S6491C23v75Ev");}
+void  S6491C2 ::v76(){vfunc_called(this, "_ZN7S6491C23v76Ev");}
+void  S6491C2 ::v77(){vfunc_called(this, "_ZN7S6491C23v77Ev");}
+S6491C2 ::S6491C2(){ note_ctor("S6491C2", this);} // tgen
+
+static void Test_S6491C2()
+{
+  extern Class_Descriptor cd_S6491C2;
+  void *lvp;
+  {
+    ABISELECT(double,int) buf[ABISELECT(13,16)];
+    init_test(&cd_S6491C2, buf);
+    S6491C2 *dp, &lv = *(dp=new (buf) S6491C2());
+    lvp = (void*)&lv;
+    check2(sizeof(lv), ABISELECT(96,60), "sizeof(S6491C2)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S6491C2)");
+    check_field_offset(lv, s6491c2f0, ABISELECT(8,4), "S6491C2.s6491c2f0");
+    check_field_offset(lv, s6491c2f1, ABISELECT(16,8), "S6491C2.s6491c2f1");
+    check_field_offset(lv, s6491c2f2, ABISELECT(24,16), "S6491C2.s6491c2f2");
+    check_field_offset(lv, s6491c2f3, ABISELECT(56,32), "S6491C2.s6491c2f3");
+    check_field_offset(lv, s6491c2f4, ABISELECT(64,40), "S6491C2.s6491c2f4");
+    check_field_offset(lv, s6491c2f5, ABISELECT(72,44), "S6491C2.s6491c2f5");
+    check_field_offset(lv, s6491c2f6, ABISELECT(80,52), "S6491C2.s6491c2f6");
+    test_class_info(&lv, &cd_S6491C2);
+    dp->~S6491C2();
+  }
+  Check_Ctor_Dtor_Calls(lvp);
+}
+static Arrange_To_Call_Me vS6491C2(Test_S6491C2, "S6491C2", ABISELECT(96,60));
+
+#else // __cplusplus
+
+extern void _ZN7S6491C2C1Ev();
+extern void _ZN7S6491C2D1Ev();
+Name_Map name_map_S6491C2[] = {
+  NSPAIR(_ZN7S6491C2C1Ev),
+  NSPAIR(_ZN7S6491C2D1Ev),
+  {0,0}
+};
+extern VTBL_ENTRY _ZTI7S6491C2[];
+extern void _ZN7S6491C2D1Ev();
+extern void _ZN7S6491C2D0Ev();
+extern void _ZN7S6491C23v14Ev();
+extern void _ZN7S6491C23v15Ev();
+extern void _ZN7S6491C23v16Ev();
+extern void _ZN7S6491C23v17Ev();
+extern void _ZN7S6491C23v18Ev();
+extern void _ZN7S6491C23v19Ev();
+extern void _ZN7S6491C23v20Ev();
+extern void _ZN7S6491C23v21Ev();
+extern void _ZN7S6491C23v22Ev();
+extern void _ZN7S6491C23v23Ev();
+extern void _ZN7S6491C23v24Ev();
+extern void _ZN7S6491C23v25Ev();
+extern void _ZN7S6491C23v26Ev();
+extern void _ZN7S6491C23v27Ev();
+extern void _ZN7S6491C23v28Ev();
+extern void _ZN7S6491C23v29Ev();
+extern void _ZN7S6491C23v30Ev();
+extern void _ZN7S6491C23v31Ev();
+extern void _ZN7S6491C23v32Ev();
+extern void _ZN7S6491C23v33Ev();
+extern void _ZN7S6491C23v34Ev();
+extern void _ZN7S6491C23v35Ev();
+extern void _ZN7S6491C23v36Ev();
+extern void _ZN7S6491C23v37Ev();
+extern void _ZN7S6491C23v38Ev();
+extern void _ZN7S6491C23v39Ev();
+extern void _ZN7S6491C23v40Ev();
+extern void _ZN7S6491C23v41Ev();
+extern void _ZN7S6491C23v42Ev();
+extern void _ZN7S6491C23v43Ev();
+extern void _ZN7S6491C23v44Ev();
+extern void _ZN7S6491C23v45Ev();
+extern void _ZN7S6491C23v46Ev();
+extern void _ZN7S6491C23v47Ev();
+extern void _ZN7S6491C23v48Ev();
+extern void _ZN7S6491C23v49Ev();
+extern void _ZN7S6491C23v50Ev();
+extern void _ZN7S6491C23v51Ev();
+extern void _ZN7S6491C23v52Ev();
+extern void _ZN7S6491C23v53Ev();
+extern void _ZN7S6491C23v54Ev();
+extern void _ZN7S6491C23v55Ev();
+extern void _ZN7S6491C23v56Ev();
+extern void _ZN7S6491C23v57Ev();
+extern void _ZN7S6491C23v58Ev();
+extern void _ZN7S6491C23v59Ev();
+extern void _ZN7S6491C23v60Ev();
+extern void _ZN7S6491C23v61Ev();
+extern void _ZN7S6491C23v62Ev();
+extern void _ZN7S6491C23v63Ev();
+extern void _ZN7S6491C23v64Ev();
+extern void _ZN7S6491C23v65Ev();
+extern void _ZN7S6491C23v66Ev();
+extern void _ZN7S6491C23v67Ev();
+extern void _ZN7S6491C23v68Ev();
+extern void _ZN7S6491C23v69Ev();
+extern void _ZN7S6491C23v70Ev();
+extern void _ZN7S6491C23v71Ev();
+extern void _ZN7S6491C23v72Ev();
+extern void _ZN7S6491C23v73Ev();
+extern void _ZN7S6491C23v74Ev();
+extern void _ZN7S6491C23v75Ev();
+extern void _ZN7S6491C23v76Ev();
+extern void _ZN7S6491C23v77Ev();
+static  VTBL_ENTRY vtc_S6491C2[] = {
+  0,
+  (VTBL_ENTRY)&(_ZTI7S6491C2[0]),
+  (VTBL_ENTRY)&_ZN7S6491C2D1Ev,
+  (VTBL_ENTRY)&_ZN7S6491C2D0Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v14Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v15Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v16Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v17Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v18Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v19Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v20Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v21Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v22Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v23Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v24Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v25Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v26Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v27Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v28Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v29Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v30Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v31Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v32Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v33Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v34Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v35Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v36Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v37Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v38Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v39Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v40Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v41Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v42Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v43Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v44Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v45Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v46Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v47Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v48Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v49Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v50Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v51Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v52Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v53Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v54Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v55Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v56Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v57Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v58Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v59Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v60Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v61Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v62Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v63Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v64Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v65Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v66Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v67Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v68Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v69Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v70Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v71Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v72Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v73Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v74Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v75Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v76Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v77Ev,
+};
+extern VTBL_ENTRY _ZTI7S6491C2[];
+extern  VTBL_ENTRY _ZTV7S6491C2[];
+Class_Descriptor cd_S6491C2 = {  "S6491C2", // class name
+  0,0,//no base classes
+  &(vtc_S6491C2[0]), // expected_vtbl_contents
+  0, //no vtt
+  ABISELECT(96,60), // object size
+  NSPAIRA(_ZTI7S6491C2),ABISELECT(16,8), //typeinfo_var
+  NSPAIRA(_ZTV7S6491C2),68, //virtual function table var
+  2, // offset into main vftv pointed to by object[0]
+  {0,0},0, // virtual table table var
+  0, // n_initialized_bases
+  0, // has_virtual_bases
+  1, // has_class_type_fields
+  0, // alt-thunk-names
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S6491C5  : S485C10_nt {
+};
+//SIG(-1 S6491C5) C1{ BC2{ m Fp Fi[2]}}
+
+
+
+static void Test_S6491C5()
+{
+  extern Class_Descriptor cd_S6491C5;
+  void *lvp;
+  {
+    ABISELECT(double,int) buf[ABISELECT(3,4)];
+    init_test(&cd_S6491C5, buf);
+    S6491C5 &lv = *(new (buf) S6491C5());
+    lvp = (void*)&lv;
+    check2(sizeof(lv), ABISELECT(16,12), "sizeof(S6491C5)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S6491C5)");
+    check_base_class_offset(lv, (S485C10_nt*), 0, "S6491C5");
+    test_class_info(&lv, &cd_S6491C5);
+  }
+  Check_Ctor_Dtor_Calls(lvp);
+}
+static Arrange_To_Call_Me vS6491C5(Test_S6491C5, "S6491C5", ABISELECT(16,12));
+
+#else // __cplusplus
+
+extern Class_Descriptor cd_S485C10_nt;
+extern VTBL_ENTRY _ZTI10S485C10_nt[];
+static Base_Class bases_S6491C5[] = {
+  // ofst, vfto, nneg, vtt_idx, base_vtt_idx, init_seq, direct, virtual
+  {&cd_S485C10_nt,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    -1, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {0}};
+Class_Descriptor cd_S6491C5 = {  "S6491C5", // class name
+  bases_S6491C5, 1,
+  0, // no vftv
+  0, //no vtt
+  ABISELECT(16,12), // object size
+  {0,0},0, // typeinfo_var
+  {0,0},0, // virtual function table var
+  2, // offset into main vftv pointed to by object[0]
+  {0,0},0, // virtual table table var
+  0, // n_initialized_bases
+  0, // has_virtual_bases
+  0, // has_class_type_fields
+  0, // alt-thunk-names
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S6491C4  : S6491C5 {
+  void *s6491c4f0;
+};
+//SIG(-1 S6491C4) C1{ BC2{ BC3{ m Fp Fi[2]}} Fp}
+
+
+
+static void Test_S6491C4()
+{
+  extern Class_Descriptor cd_S6491C4;
+  void *lvp;
+  {
+    ABISELECT(double,int) buf[ABISELECT(4,5)];
+    init_test(&cd_S6491C4, buf);
+    S6491C4 &lv = *(new (buf) S6491C4());
+    lvp = (void*)&lv;
+    check2(sizeof(lv), ABISELECT(24,16), "sizeof(S6491C4)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S6491C4)");
+    check_base_class_offset(lv, (S485C10_nt*)(S6491C5*), 0, "S6491C4");
+    check_base_class_offset(lv, (S6491C5*), 0, "S6491C4");
+    check_field_offset(lv, s6491c4f0, ABISELECT(16,12), "S6491C4.s6491c4f0");
+    test_class_info(&lv, &cd_S6491C4);
+  }
+  Check_Ctor_Dtor_Calls(lvp);
+}
+static Arrange_To_Call_Me vS6491C4(Test_S6491C4, "S6491C4", ABISELECT(24,16));
+
+#else // __cplusplus
+
+extern Class_Descriptor cd_S485C10_nt;
+extern VTBL_ENTRY _ZTI10S485C10_nt[];
+extern Class_Descriptor cd_S6491C5;
+static Base_Class bases_S6491C4[] = {
+  // ofst, vfto, nneg, vtt_idx, base_vtt_idx, init_seq, direct, virtual
+  {&cd_S485C10_nt,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    -1, //init_seq
+    1, //immediately_derived
+  0, 0},
+  {&cd_S6491C5,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    -1, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {0}};
+Class_Descriptor cd_S6491C4 = {  "S6491C4", // class name
+  bases_S6491C4, 2,
+  0, // no vftv
+  0, //no vtt
+  ABISELECT(24,16), // object size
+  {0,0},0, // typeinfo_var
+  {0,0},0, // virtual function table var
+  2, // offset into main vftv pointed to by object[0]
+  {0,0},0, // virtual table table var
+  0, // n_initialized_bases
+  0, // has_virtual_bases
+  0, // has_class_type_fields
+  0, // alt-thunk-names
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S6491C10  : S485C10_nt {
+};
+//SIG(-1 S6491C10) C1{ BC2{ m Fp Fi[2]}}
+
+
+
+static void Test_S6491C10()
+{
+  extern Class_Descriptor cd_S6491C10;
+  void *lvp;
+  {
+    ABISELECT(double,int) buf[ABISELECT(3,4)];
+    init_test(&cd_S6491C10, buf);
+    S6491C10 &lv = *(new (buf) S6491C10());
+    lvp = (void*)&lv;
+    check2(sizeof(lv), ABISELECT(16,12), "sizeof(S6491C10)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S6491C10)");
+    check_base_class_offset(lv, (S485C10_nt*), 0, "S6491C10");
+    test_class_info(&lv, &cd_S6491C10);
+  }
+  Check_Ctor_Dtor_Calls(lvp);
+}
+static Arrange_To_Call_Me vS6491C10(Test_S6491C10, "S6491C10", ABISELECT(16,12));
+
+#else // __cplusplus
+
+extern Class_Descriptor cd_S485C10_nt;
+extern VTBL_ENTRY _ZTI10S485C10_nt[];
+static Base_Class bases_S6491C10[] = {
+  // ofst, vfto, nneg, vtt_idx, base_vtt_idx, init_seq, direct, virtual
+  {&cd_S485C10_nt,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    -1, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {0}};
+Class_Descriptor cd_S6491C10 = {  "S6491C10", // class name
+  bases_S6491C10, 1,
+  0, // no vftv
+  0, //no vtt
+  ABISELECT(16,12), // object size
+  {0,0},0, // typeinfo_var
+  {0,0},0, // virtual function table var
+  2, // offset into main vftv pointed to by object[0]
+  {0,0},0, // virtual table table var
+  0, // n_initialized_bases
+  0, // has_virtual_bases
+  0, // has_class_type_fields
+  0, // alt-thunk-names
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S6491C9  : S6491C10 {
+  void *s6491c9f0;
+};
+//SIG(-1 S6491C9) C1{ BC2{ BC3{ m Fp Fi[2]}} Fp}
+
+
+
+static void Test_S6491C9()
+{
+  extern Class_Descriptor cd_S6491C9;
+  void *lvp;
+  {
+    ABISELECT(double,int) buf[ABISELECT(4,5)];
+    init_test(&cd_S6491C9, buf);
+    S6491C9 &lv = *(new (buf) S6491C9());
+    lvp = (void*)&lv;
+    check2(sizeof(lv), ABISELECT(24,16), "sizeof(S6491C9)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S6491C9)");
+    check_base_class_offset(lv, (S485C10_nt*)(S6491C10*), 0, "S6491C9");
+    check_base_class_offset(lv, (S6491C10*), 0, "S6491C9");
+    check_field_offset(lv, s6491c9f0, ABISELECT(16,12), "S6491C9.s6491c9f0");
+    test_class_info(&lv, &cd_S6491C9);
+  }
+  Check_Ctor_Dtor_Calls(lvp);
+}
+static Arrange_To_Call_Me vS6491C9(Test_S6491C9, "S6491C9", ABISELECT(24,16));
+
+#else // __cplusplus
+
+extern Class_Descriptor cd_S485C10_nt;
+extern VTBL_ENTRY _ZTI10S485C10_nt[];
+extern Class_Descriptor cd_S6491C10;
+static Base_Class bases_S6491C9[] = {
+  // ofst, vfto, nneg, vtt_idx, base_vtt_idx, init_seq, direct, virtual
+  {&cd_S485C10_nt,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    -1, //init_seq
+    1, //immediately_derived
+  0, 0},
+  {&cd_S6491C10,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    -1, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {0}};
+Class_Descriptor cd_S6491C9 = {  "S6491C9", // class name
+  bases_S6491C9, 2,
+  0, // no vftv
+  0, //no vtt
+  ABISELECT(24,16), // object size
+  {0,0},0, // typeinfo_var
+  {0,0},0, // virtual function table var
+  2, // offset into main vftv pointed to by object[0]
+  {0,0},0, // virtual table table var
+  0, // n_initialized_bases
+  0, // has_virtual_bases
+  0, // has_class_type_fields
+  0, // alt-thunk-names
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S6491C15  {
+  void *s6491c15f0;
+  int s6491c15f1[2];
+  ::S485C18 s6491c15f2;
+  void *s6491c15f3;
+  void  mf6491c15(); // _ZN8S6491C159mf6491c15Ev
+};
+//SIG(-1 S6491C15) C1{ m Fp Fi[2] FC2{ BC3{ m Fp Fi[2]}} Fp}
+
+
+void  S6491C15 ::mf6491c15(){}
+
+static void Test_S6491C15()
+{
+  {
+    init_simple_test("S6491C15");
+    S6491C15 lv;
+    check2(sizeof(lv), ABISELECT(40,28), "sizeof(S6491C15)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S6491C15)");
+    check_field_offset(lv, s6491c15f0, 0, "S6491C15.s6491c15f0");
+    check_field_offset(lv, s6491c15f1, ABISELECT(8,4), "S6491C15.s6491c15f1");
+    check_field_offset(lv, s6491c15f2, ABISELECT(16,12), "S6491C15.s6491c15f2");
+    check_field_offset(lv, s6491c15f3, ABISELECT(32,24), "S6491C15.s6491c15f3");
+  }
+}
+static Arrange_To_Call_Me vS6491C15(Test_S6491C15, "S6491C15", ABISELECT(40,28));
+
+#else // __cplusplus
+
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S6491C20_nt  {
+  void *s6491c20f0[3];
+  void  mf6491c20(); // _ZN11S6491C20_nt9mf6491c20Ev
+};
+//SIG(-1 S6491C20_nt) C1{ m Fp[3]}
+
+
+void  S6491C20_nt ::mf6491c20(){}
+
+//skip512 S6491C20_nt
+
+#else // __cplusplus
+
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S6491C19  {
+  ::S6491C20_nt s6491c19f0;
+  unsigned int s6491c19f1:1;
+  virtual  ~S6491C19(); // _ZN8S6491C19D1Ev
+  virtual void  v80(); // _ZN8S6491C193v80Ev
+  virtual void  v81(); // _ZN8S6491C193v81Ev
+  virtual void  v82(); // _ZN8S6491C193v82Ev
+  virtual void  v83(); // _ZN8S6491C193v83Ev
+  virtual void  v84(); // _ZN8S6491C193v84Ev
+  virtual void  v85(); // _ZN8S6491C193v85Ev
+  virtual void  v86(); // _ZN8S6491C193v86Ev
+  S6491C19(); // tgen
+};
+//SIG(-1 S6491C19) C1{ vd v1 v2 v3 v4 v5 v6 v7 FC2{ m Fp[3]} Fi:1}
+
+
+ S6491C19 ::~S6491C19(){ note_dtor("S6491C19", this);}
+void  S6491C19 ::v80(){vfunc_called(this, "_ZN8S6491C193v80Ev");}
+void  S6491C19 ::v81(){vfunc_called(this, "_ZN8S6491C193v81Ev");}
+void  S6491C19 ::v82(){vfunc_called(this, "_ZN8S6491C193v82Ev");}
+void  S6491C19 ::v83(){vfunc_called(this, "_ZN8S6491C193v83Ev");}
+void  S6491C19 ::v84(){vfunc_called(this, "_ZN8S6491C193v84Ev");}
+void  S6491C19 ::v85(){vfunc_called(this, "_ZN8S6491C193v85Ev");}
+void  S6491C19 ::v86(){vfunc_called(this, "_ZN8S6491C193v86Ev");}
+S6491C19 ::S6491C19(){ note_ctor("S6491C19", this);} // tgen
+
+static void Test_S6491C19()
+{
+  extern Class_Descriptor cd_S6491C19;
+  void *lvp;
+  {
+    ABISELECT(double,int) buf[6];
+    init_test(&cd_S6491C19, buf);
+    S6491C19 *dp, &lv = *(dp=new (buf) S6491C19());
+    lvp = (void*)&lv;
+    check2(sizeof(lv), ABISELECT(40,20), "sizeof(S6491C19)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S6491C19)");
+    check_field_offset(lv, s6491c19f0, ABISELECT(8,4), "S6491C19.s6491c19f0");
+    set_bf_and_test(lv, s6491c19f1, ABISELECT(32,16), 0, 1, 1, "S6491C19");
+    test_class_info(&lv, &cd_S6491C19);
+    dp->~S6491C19();
+  }
+  Check_Ctor_Dtor_Calls(lvp);
+}
+static Arrange_To_Call_Me vS6491C19(Test_S6491C19, "S6491C19", ABISELECT(40,20));
+
+#else // __cplusplus
+
+extern void _ZN8S6491C19C1Ev();
+extern void _ZN8S6491C19D1Ev();
+Name_Map name_map_S6491C19[] = {
+  NSPAIR(_ZN8S6491C19C1Ev),
+  NSPAIR(_ZN8S6491C19D1Ev),
+  {0,0}
+};
+extern VTBL_ENTRY _ZTI8S6491C19[];
+extern void _ZN8S6491C19D1Ev();
+extern void _ZN8S6491C19D0Ev();
+extern void _ZN8S6491C193v80Ev();
+extern void _ZN8S6491C193v81Ev();
+extern void _ZN8S6491C193v82Ev();
+extern void _ZN8S6491C193v83Ev();
+extern void _ZN8S6491C193v84Ev();
+extern void _ZN8S6491C193v85Ev();
+extern void _ZN8S6491C193v86Ev();
+static  VTBL_ENTRY vtc_S6491C19[] = {
+  0,
+  (VTBL_ENTRY)&(_ZTI8S6491C19[0]),
+  (VTBL_ENTRY)&_ZN8S6491C19D1Ev,
+  (VTBL_ENTRY)&_ZN8S6491C19D0Ev,
+  (VTBL_ENTRY)&_ZN8S6491C193v80Ev,
+  (VTBL_ENTRY)&_ZN8S6491C193v81Ev,
+  (VTBL_ENTRY)&_ZN8S6491C193v82Ev,
+  (VTBL_ENTRY)&_ZN8S6491C193v83Ev,
+  (VTBL_ENTRY)&_ZN8S6491C193v84Ev,
+  (VTBL_ENTRY)&_ZN8S6491C193v85Ev,
+  (VTBL_ENTRY)&_ZN8S6491C193v86Ev,
+};
+extern VTBL_ENTRY _ZTI8S6491C19[];
+extern  VTBL_ENTRY _ZTV8S6491C19[];
+Class_Descriptor cd_S6491C19 = {  "S6491C19", // class name
+  0,0,//no base classes
+  &(vtc_S6491C19[0]), // expected_vtbl_contents
+  0, //no vtt
+  ABISELECT(40,20), // object size
+  NSPAIRA(_ZTI8S6491C19),ABISELECT(16,8), //typeinfo_var
+  NSPAIRA(_ZTV8S6491C19),11, //virtual function table var
+  2, // offset into main vftv pointed to by object[0]
+  {0,0},0, // virtual table table var
+  0, // n_initialized_bases
+  0, // has_virtual_bases
+  1, // has_class_type_fields
+  0, // alt-thunk-names
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S6491C21_nt  {
+  void *s6491c21f0;
+  void  mf6491c21(); // _ZN11S6491C21_nt9mf6491c21Ev
+};
+//SIG(-1 S6491C21_nt) C1{ m Fp}
+
+
+void  S6491C21_nt ::mf6491c21(){}
+
+//skip512 S6491C21_nt
+
+#else // __cplusplus
+
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S6491C18  : S6491C19 {
+  ::S6491C21_nt s6491c18f0;
+  virtual  ~S6491C18(); // _ZN8S6491C18D1Ev
+  virtual void  v87(); // _ZN8S6491C183v87Ev
+  virtual void  v88(); // _ZN8S6491C183v88Ev
+  S6491C18(); // tgen
+};
+//SIG(-1 S6491C18) C1{ BC2{ vd v3 v4 v5 v6 v7 v8 v9 FC3{ m Fp[3]} Fi:1} vd v1 v2 FC4{ m Fp}}
+
+
+ S6491C18 ::~S6491C18(){ note_dtor("S6491C18", this);}
+void  S6491C18 ::v87(){vfunc_called(this, "_ZN8S6491C183v87Ev");}
+void  S6491C18 ::v88(){vfunc_called(this, "_ZN8S6491C183v88Ev");}
+S6491C18 ::S6491C18(){ note_ctor("S6491C18", this);} // tgen
+
+static void Test_S6491C18()
+{
+  extern Class_Descriptor cd_S6491C18;
+  void *lvp;
+  {
+    ABISELECT(double,int) buf[7];
+    init_test(&cd_S6491C18, buf);
+    S6491C18 *dp, &lv = *(dp=new (buf) S6491C18());
+    lvp = (void*)&lv;
+    check2(sizeof(lv), ABISELECT(48,24), "sizeof(S6491C18)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S6491C18)");
+    check_base_class_offset(lv, (S6491C19*), 0, "S6491C18");
+    check_field_offset(lv, s6491c18f0, ABISELECT(40,20), "S6491C18.s6491c18f0");
+    test_class_info(&lv, &cd_S6491C18);
+    dp->~S6491C18();
+  }
+  Check_Ctor_Dtor_Calls(lvp);
+}
+static Arrange_To_Call_Me vS6491C18(Test_S6491C18, "S6491C18", ABISELECT(48,24));
+
+#else // __cplusplus
+
+extern void _ZN8S6491C18C1Ev();
+extern void _ZN8S6491C18D1Ev();
+Name_Map name_map_S6491C18[] = {
+  NSPAIR(_ZN8S6491C18C1Ev),
+  NSPAIR(_ZN8S6491C18D1Ev),
+  {0,0}
+};
+extern Class_Descriptor cd_S6491C19;
+extern VTBL_ENTRY _ZTI8S6491C19[];
+extern  VTBL_ENTRY _ZTV8S6491C19[];
+static Base_Class bases_S6491C18[] = {
+  // ofst, vfto, nneg, vtt_idx, base_vtt_idx, init_seq, direct, virtual
+  {&cd_S6491C19,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    1, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {0}};
+extern VTBL_ENTRY _ZTI8S6491C18[];
+extern void _ZN8S6491C18D1Ev();
+extern void _ZN8S6491C18D0Ev();
+extern void _ZN8S6491C193v80Ev();
+extern void _ZN8S6491C193v81Ev();
+extern void _ZN8S6491C193v82Ev();
+extern void _ZN8S6491C193v83Ev();
+extern void _ZN8S6491C193v84Ev();
+extern void _ZN8S6491C193v85Ev();
+extern void _ZN8S6491C193v86Ev();
+extern void _ZN8S6491C183v87Ev();
+extern void _ZN8S6491C183v88Ev();
+static  VTBL_ENTRY vtc_S6491C18[] = {
+  0,
+  (VTBL_ENTRY)&(_ZTI8S6491C18[0]),
+  (VTBL_ENTRY)&_ZN8S6491C18D1Ev,
+  (VTBL_ENTRY)&_ZN8S6491C18D0Ev,
+  (VTBL_ENTRY)&_ZN8S6491C193v80Ev,
+  (VTBL_ENTRY)&_ZN8S6491C193v81Ev,
+  (VTBL_ENTRY)&_ZN8S6491C193v82Ev,
+  (VTBL_ENTRY)&_ZN8S6491C193v83Ev,
+  (VTBL_ENTRY)&_ZN8S6491C193v84Ev,
+  (VTBL_ENTRY)&_ZN8S6491C193v85Ev,
+  (VTBL_ENTRY)&_ZN8S6491C193v86Ev,
+  (VTBL_ENTRY)&_ZN8S6491C183v87Ev,
+  (VTBL_ENTRY)&_ZN8S6491C183v88Ev,
+};
+extern VTBL_ENTRY _ZTI8S6491C18[];
+extern  VTBL_ENTRY _ZTV8S6491C18[];
+Class_Descriptor cd_S6491C18 = {  "S6491C18", // class name
+  bases_S6491C18, 1,
+  &(vtc_S6491C18[0]), // expected_vtbl_contents
+  0, //no vtt
+  ABISELECT(48,24), // object size
+  NSPAIRA(_ZTI8S6491C18),ABISELECT(24,12), //typeinfo_var
+  NSPAIRA(_ZTV8S6491C18),13, //virtual function table var
+  2, // offset into main vftv pointed to by object[0]
+  {0,0},0, // virtual table table var
+  1, // n_initialized_bases
+  0, // has_virtual_bases
+  1, // has_class_type_fields
+  0, // alt-thunk-names
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S6491C23  : S485C10_nt {
+};
+//SIG(-1 S6491C23) C1{ BC2{ m Fp Fi[2]}}
+
+
+
+static void Test_S6491C23()
+{
+  extern Class_Descriptor cd_S6491C23;
+  void *lvp;
+  {
+    ABISELECT(double,int) buf[ABISELECT(3,4)];
+    init_test(&cd_S6491C23, buf);
+    S6491C23 &lv = *(new (buf) S6491C23());
+    lvp = (void*)&lv;
+    check2(sizeof(lv), ABISELECT(16,12), "sizeof(S6491C23)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S6491C23)");
+    check_base_class_offset(lv, (S485C10_nt*), 0, "S6491C23");
+    test_class_info(&lv, &cd_S6491C23);
+  }
+  Check_Ctor_Dtor_Calls(lvp);
+}
+static Arrange_To_Call_Me vS6491C23(Test_S6491C23, "S6491C23", ABISELECT(16,12));
+
+#else // __cplusplus
+
+extern Class_Descriptor cd_S485C10_nt;
+extern VTBL_ENTRY _ZTI10S485C10_nt[];
+static Base_Class bases_S6491C23[] = {
+  // ofst, vfto, nneg, vtt_idx, base_vtt_idx, init_seq, direct, virtual
+  {&cd_S485C10_nt,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    -1, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {0}};
+extern VTBL_ENTRY _ZTI8S6491C23[];
+Class_Descriptor cd_S6491C23 = {  "S6491C23", // class name
+  bases_S6491C23, 1,
+  0, // no vftv
+  0, //no vtt
+  ABISELECT(16,12), // object size
+  NSPAIRA(_ZTI8S6491C23),ABISELECT(24,12), //typeinfo_var
+  {0,0},0, // virtual function table var
+  2, // offset into main vftv pointed to by object[0]
+  {0,0},0, // virtual table table var
+  0, // n_initialized_bases
+  0, // has_virtual_bases
+  0, // has_class_type_fields
+  0, // alt-thunk-names
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S6491C24  {
+  virtual void  v94(); // _ZN8S6491C243v94Ev
+  virtual void  v95(); // _ZN8S6491C243v95Ev
+  virtual void  v96(); // _ZN8S6491C243v96Ev
+  virtual void  v97(); // _ZN8S6491C243v97Ev
+  virtual void  v98(); // _ZN8S6491C243v98Ev
+  ~S6491C24(); // tgen
+  S6491C24(); // tgen
+};
+//SIG(-1 S6491C24) C1{ v1 v2 v3 v4 v5}
+
+
+void  S6491C24 ::v94(){vfunc_called(this, "_ZN8S6491C243v94Ev");}
+void  S6491C24 ::v95(){vfunc_called(this, "_ZN8S6491C243v95Ev");}
+void  S6491C24 ::v96(){vfunc_called(this, "_ZN8S6491C243v96Ev");}
+void  S6491C24 ::v97(){vfunc_called(this, "_ZN8S6491C243v97Ev");}
+void  S6491C24 ::v98(){vfunc_called(this, "_ZN8S6491C243v98Ev");}
+S6491C24 ::~S6491C24(){ note_dtor("S6491C24", this);} // tgen
+S6491C24 ::S6491C24(){ note_ctor("S6491C24", this);} // tgen
+
+static void Test_S6491C24()
+{
+  extern Class_Descriptor cd_S6491C24;
+  void *lvp;
+  {
+    ABISELECT(double,int) buf[2];
+    init_test(&cd_S6491C24, buf);
+    S6491C24 *dp, &lv = *(dp=new (buf) S6491C24());
+    lvp = (void*)&lv;
+    check2(sizeof(lv), ABISELECT(8,4), "sizeof(S6491C24)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S6491C24)");
+    test_class_info(&lv, &cd_S6491C24);
+    dp->~S6491C24();
+  }
+  Check_Ctor_Dtor_Calls(lvp);
+}
+static Arrange_To_Call_Me vS6491C24(Test_S6491C24, "S6491C24", ABISELECT(8,4));
+
+#else // __cplusplus
+
+extern void _ZN8S6491C24C1Ev();
+extern void _ZN8S6491C24D1Ev();
+Name_Map name_map_S6491C24[] = {
+  NSPAIR(_ZN8S6491C24C1Ev),
+  NSPAIR(_ZN8S6491C24D1Ev),
+  {0,0}
+};
+extern VTBL_ENTRY _ZTI8S6491C24[];
+extern void _ZN8S6491C243v94Ev();
+extern void _ZN8S6491C243v95Ev();
+extern void _ZN8S6491C243v96Ev();
+extern void _ZN8S6491C243v97Ev();
+extern void _ZN8S6491C243v98Ev();
+static  VTBL_ENTRY vtc_S6491C24[] = {
+  0,
+  (VTBL_ENTRY)&(_ZTI8S6491C24[0]),
+  (VTBL_ENTRY)&_ZN8S6491C243v94Ev,
+  (VTBL_ENTRY)&_ZN8S6491C243v95Ev,
+  (VTBL_ENTRY)&_ZN8S6491C243v96Ev,
+  (VTBL_ENTRY)&_ZN8S6491C243v97Ev,
+  (VTBL_ENTRY)&_ZN8S6491C243v98Ev,
+};
+extern VTBL_ENTRY _ZTI8S6491C24[];
+extern  VTBL_ENTRY _ZTV8S6491C24[];
+Class_Descriptor cd_S6491C24 = {  "S6491C24", // class name
+  0,0,//no base classes
+  &(vtc_S6491C24[0]), // expected_vtbl_contents
+  0, //no vtt
+  ABISELECT(8,4), // object size
+  NSPAIRA(_ZTI8S6491C24),ABISELECT(16,8), //typeinfo_var
+  NSPAIRA(_ZTV8S6491C24),7, //virtual function table var
+  2, // offset into main vftv pointed to by object[0]
+  {0,0},0, // virtual table table var
+  0, // n_initialized_bases
+  0, // has_virtual_bases
+  0, // has_class_type_fields
+  0, // alt-thunk-names
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S6491C22  : S6491C23 , S6491C24 {
+  int s6491c22f0;
+  virtual void  v89(); // _ZN8S6491C223v89Ev
+  virtual void  v90(); // _ZN8S6491C223v90Ev
+  virtual void  v91(); // _ZN8S6491C223v91Ev
+  virtual void  v92(); // _ZN8S6491C223v92Ev
+  virtual void  v93(); // _ZN8S6491C223v93Ev
+  ~S6491C22(); // tgen
+  S6491C22(); // tgen
+};
+//SIG(-1 S6491C22) C1{ BC2{ BC3{ m Fp Fi[2]}} BC4{ v6 v7 v8 v9 v10} v1 v2 v3 v4 v5 Fi}
+
+
+void  S6491C22 ::v89(){vfunc_called(this, "_ZN8S6491C223v89Ev");}
+void  S6491C22 ::v90(){vfunc_called(this, "_ZN8S6491C223v90Ev");}
+void  S6491C22 ::v91(){vfunc_called(this, "_ZN8S6491C223v91Ev");}
+void  S6491C22 ::v92(){vfunc_called(this, "_ZN8S6491C223v92Ev");}
+void  S6491C22 ::v93(){vfunc_called(this, "_ZN8S6491C223v93Ev");}
+S6491C22 ::~S6491C22(){ note_dtor("S6491C22", this);} // tgen
+S6491C22 ::S6491C22(){ note_ctor("S6491C22", this);} // tgen
+
+static void Test_S6491C22()
+{
+  extern Class_Descriptor cd_S6491C22;
+  void *lvp;
+  {
+    ABISELECT(double,int) buf[ABISELECT(5,6)];
+    init_test(&cd_S6491C22, buf);
+    S6491C22 *dp, &lv = *(dp=new (buf) S6491C22());
+    lvp = (void*)&lv;
+    check2(sizeof(lv), ABISELECT(32,20), "sizeof(S6491C22)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S6491C22)");
+    check_base_class_offset(lv, (S485C10_nt*)(S6491C23*), ABISELECT(8,4), "S6491C22");
+    check_base_class_offset(lv, (S6491C23*), ABISELECT(8,4), "S6491C22");
+    check_base_class_offset(lv, (S6491C24*), 0, "S6491C22");
+    check_field_offset(lv, s6491c22f0, ABISELECT(24,16), "S6491C22.s6491c22f0");
+    test_class_info(&lv, &cd_S6491C22);
+    dp->~S6491C22();
+  }
+  Check_Ctor_Dtor_Calls(lvp);
+}
+static Arrange_To_Call_Me vS6491C22(Test_S6491C22, "S6491C22", ABISELECT(32,20));
+
+#else // __cplusplus
+
+extern void _ZN8S6491C22C1Ev();
+extern void _ZN8S6491C22D1Ev();
+Name_Map name_map_S6491C22[] = {
+  NSPAIR(_ZN8S6491C22C1Ev),
+  NSPAIR(_ZN8S6491C22D1Ev),
+  {0,0}
+};
+extern Class_Descriptor cd_S485C10_nt;
+extern VTBL_ENTRY _ZTI10S485C10_nt[];
+extern Class_Descriptor cd_S6491C23;
+extern VTBL_ENTRY _ZTI8S6491C23[];
+extern Class_Descriptor cd_S6491C24;
+extern VTBL_ENTRY _ZTI8S6491C24[];
+extern  VTBL_ENTRY _ZTV8S6491C24[];
+static Base_Class bases_S6491C22[] = {
+  // ofst, vfto, nneg, vtt_idx, base_vtt_idx, init_seq, direct, virtual
+  {&cd_S485C10_nt,    ABISELECT(8,4), //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    -1, //init_seq
+    1, //immediately_derived
+  0, 0},
+  {&cd_S6491C23,    ABISELECT(8,4), //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    -1, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {&cd_S6491C24,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    1, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {0}};
+extern VTBL_ENTRY _ZTI8S6491C22[];
+extern void _ZN8S6491C243v94Ev();
+extern void _ZN8S6491C243v95Ev();
+extern void _ZN8S6491C243v96Ev();
+extern void _ZN8S6491C243v97Ev();
+extern void _ZN8S6491C243v98Ev();
+extern void _ZN8S6491C223v89Ev();
+extern void _ZN8S6491C223v90Ev();
+extern void _ZN8S6491C223v91Ev();
+extern void _ZN8S6491C223v92Ev();
+extern void _ZN8S6491C223v93Ev();
+static  VTBL_ENTRY vtc_S6491C22[] = {
+  0,
+  (VTBL_ENTRY)&(_ZTI8S6491C22[0]),
+  (VTBL_ENTRY)&_ZN8S6491C243v94Ev,
+  (VTBL_ENTRY)&_ZN8S6491C243v95Ev,
+  (VTBL_ENTRY)&_ZN8S6491C243v96Ev,
+  (VTBL_ENTRY)&_ZN8S6491C243v97Ev,
+  (VTBL_ENTRY)&_ZN8S6491C243v98Ev,
+  (VTBL_ENTRY)&_ZN8S6491C223v89Ev,
+  (VTBL_ENTRY)&_ZN8S6491C223v90Ev,
+  (VTBL_ENTRY)&_ZN8S6491C223v91Ev,
+  (VTBL_ENTRY)&_ZN8S6491C223v92Ev,
+  (VTBL_ENTRY)&_ZN8S6491C223v93Ev,
+};
+extern VTBL_ENTRY _ZTI8S6491C22[];
+extern  VTBL_ENTRY _ZTV8S6491C22[];
+Class_Descriptor cd_S6491C22 = {  "S6491C22", // class name
+  bases_S6491C22, 3,
+  &(vtc_S6491C22[0]), // expected_vtbl_contents
+  0, //no vtt
+  ABISELECT(32,20), // object size
+  NSPAIRA(_ZTI8S6491C22),ABISELECT(56,32), //typeinfo_var
+  NSPAIRA(_ZTV8S6491C22),12, //virtual function table var
+  2, // offset into main vftv pointed to by object[0]
+  {0,0},0, // virtual table table var
+  1, // n_initialized_bases
+  0, // has_virtual_bases
+  0, // has_class_type_fields
+  0, // alt-thunk-names
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S6491C17  : S6491C18 {
+  ::S6491C22 s6491c17f0;
+  void *s6491c17f1;
+  virtual void  v78(); // _ZN8S6491C173v78Ev
+  virtual void  v79(); // _ZN8S6491C173v79Ev
+  ~S6491C17(); // tgen
+  S6491C17(); // tgen
+};
+//SIG(-1 S6491C17) C1{ BC2{ BC3{ vd v3 v4 v5 v6 v7 v8 v9 FC4{ m Fp[3]} Fi:1} vd v10 v11 FC5{ m Fp}} v1 v2 FC6{ BC7{ BC8{ m Fp Fi[2]}} BC9{ v17 v18 v19 v20 v21} v12 v13 v14 v15 v16 Fi} Fp}
+
+
+void  S6491C17 ::v78(){vfunc_called(this, "_ZN8S6491C173v78Ev");}
+void  S6491C17 ::v79(){vfunc_called(this, "_ZN8S6491C173v79Ev");}
+S6491C17 ::~S6491C17(){ note_dtor("S6491C17", this);} // tgen
+S6491C17 ::S6491C17(){ note_ctor("S6491C17", this);} // tgen
+
+static void Test_S6491C17()
+{
+  extern Class_Descriptor cd_S6491C17;
+  void *lvp;
+  {
+    ABISELECT(double,int) buf[ABISELECT(12,13)];
+    init_test(&cd_S6491C17, buf);
+    S6491C17 *dp, &lv = *(dp=new (buf) S6491C17());
+    lvp = (void*)&lv;
+    check2(sizeof(lv), ABISELECT(88,48), "sizeof(S6491C17)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S6491C17)");
+    check_base_class_offset(lv, (S6491C19*)(S6491C18*), 0, "S6491C17");
+    check_base_class_offset(lv, (S6491C18*), 0, "S6491C17");
+    check_field_offset(lv, s6491c17f0, ABISELECT(48,24), "S6491C17.s6491c17f0");
+    check_field_offset(lv, s6491c17f1, ABISELECT(80,44), "S6491C17.s6491c17f1");
+    test_class_info(&lv, &cd_S6491C17);
+    dp->~S6491C17();
+  }
+  Check_Ctor_Dtor_Calls(lvp);
+}
+static Arrange_To_Call_Me vS6491C17(Test_S6491C17, "S6491C17", ABISELECT(88,48));
+
+#else // __cplusplus
+
+extern void _ZN8S6491C17C1Ev();
+extern void _ZN8S6491C17D1Ev();
+Name_Map name_map_S6491C17[] = {
+  NSPAIR(_ZN8S6491C17C1Ev),
+  NSPAIR(_ZN8S6491C17D1Ev),
+  {0,0}
+};
+extern Class_Descriptor cd_S6491C19;
+extern VTBL_ENTRY _ZTI8S6491C19[];
+extern  VTBL_ENTRY _ZTV8S6491C19[];
+extern Class_Descriptor cd_S6491C18;
+extern VTBL_ENTRY _ZTI8S6491C18[];
+extern  VTBL_ENTRY _ZTV8S6491C18[];
+static Base_Class bases_S6491C17[] = {
+  // ofst, vfto, nneg, vtt_idx, base_vtt_idx, init_seq, direct, virtual
+  {&cd_S6491C19,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    1, //init_seq
+    1, //immediately_derived
+  0, 0},
+  {&cd_S6491C18,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    2, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {0}};
+extern VTBL_ENTRY _ZTI8S6491C17[];
+extern void _ZN8S6491C17D1Ev();
+extern void _ZN8S6491C17D0Ev();
+extern void _ZN8S6491C193v80Ev();
+extern void _ZN8S6491C193v81Ev();
+extern void _ZN8S6491C193v82Ev();
+extern void _ZN8S6491C193v83Ev();
+extern void _ZN8S6491C193v84Ev();
+extern void _ZN8S6491C193v85Ev();
+extern void _ZN8S6491C193v86Ev();
+extern void _ZN8S6491C183v87Ev();
+extern void _ZN8S6491C183v88Ev();
+extern void _ZN8S6491C173v78Ev();
+extern void _ZN8S6491C173v79Ev();
+static  VTBL_ENTRY vtc_S6491C17[] = {
+  0,
+  (VTBL_ENTRY)&(_ZTI8S6491C17[0]),
+  (VTBL_ENTRY)&_ZN8S6491C17D1Ev,
+  (VTBL_ENTRY)&_ZN8S6491C17D0Ev,
+  (VTBL_ENTRY)&_ZN8S6491C193v80Ev,
+  (VTBL_ENTRY)&_ZN8S6491C193v81Ev,
+  (VTBL_ENTRY)&_ZN8S6491C193v82Ev,
+  (VTBL_ENTRY)&_ZN8S6491C193v83Ev,
+  (VTBL_ENTRY)&_ZN8S6491C193v84Ev,
+  (VTBL_ENTRY)&_ZN8S6491C193v85Ev,
+  (VTBL_ENTRY)&_ZN8S6491C193v86Ev,
+  (VTBL_ENTRY)&_ZN8S6491C183v87Ev,
+  (VTBL_ENTRY)&_ZN8S6491C183v88Ev,
+  (VTBL_ENTRY)&_ZN8S6491C173v78Ev,
+  (VTBL_ENTRY)&_ZN8S6491C173v79Ev,
+};
+extern VTBL_ENTRY _ZTI8S6491C17[];
+extern  VTBL_ENTRY _ZTV8S6491C17[];
+Class_Descriptor cd_S6491C17 = {  "S6491C17", // class name
+  bases_S6491C17, 2,
+  &(vtc_S6491C17[0]), // expected_vtbl_contents
+  0, //no vtt
+  ABISELECT(88,48), // object size
+  NSPAIRA(_ZTI8S6491C17),ABISELECT(24,12), //typeinfo_var
+  NSPAIRA(_ZTV8S6491C17),15, //virtual function table var
+  2, // offset into main vftv pointed to by object[0]
+  {0,0},0, // virtual table table var
+  2, // n_initialized_bases
+  0, // has_virtual_bases
+  1, // has_class_type_fields
+  0, // alt-thunk-names
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S6491C28  {
+  void *s6491c28f0;
+  int s6491c28f1[2];
+};
+//SIG(-1 S6491C28) C1{ Fp Fi[2]}
+
+
+
+static void Test_S6491C28()
+{
+  {
+    init_simple_test("S6491C28");
+    S6491C28 lv;
+    check2(sizeof(lv), ABISELECT(16,12), "sizeof(S6491C28)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S6491C28)");
+    check_field_offset(lv, s6491c28f0, 0, "S6491C28.s6491c28f0");
+    check_field_offset(lv, s6491c28f1, ABISELECT(8,4), "S6491C28.s6491c28f1");
+  }
+}
+static Arrange_To_Call_Me vS6491C28(Test_S6491C28, "S6491C28", ABISELECT(16,12));
+
+#else // __cplusplus
+
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S6491C27  {
+  ::S6491C28 s6491c27f0[16];
+  int s6491c27f1;
+  void  mf6491c27(); // _ZN8S6491C279mf6491c27Ev
+};
+//SIG(-1 S6491C27) C1{ m FC2{ Fp Fi[2]}[16] Fi}
+
+
+void  S6491C27 ::mf6491c27(){}
+
+static void Test_S6491C27()
+{
+  {
+    init_simple_test("S6491C27");
+    S6491C27 lv;
+    check2(sizeof(lv), ABISELECT(264,196), "sizeof(S6491C27)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S6491C27)");
+    check_field_offset(lv, s6491c27f0, 0, "S6491C27.s6491c27f0");
+    check_field_offset(lv, s6491c27f1, ABISELECT(256,192), "S6491C27.s6491c27f1");
+  }
+}
+static Arrange_To_Call_Me vS6491C27(Test_S6491C27, "S6491C27", ABISELECT(264,196));
+
+#else // __cplusplus
+
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S6491C31  {
+  char s6491c31f0[3];
+  int s6491c31f1;
+};
+//SIG(-1 S6491C31) C1{ Fc[3] Fi}
+
+
+
+static void Test_S6491C31()
+{
+  {
+    init_simple_test("S6491C31");
+    S6491C31 lv;
+    check2(sizeof(lv), 8, "sizeof(S6491C31)");
+    check2(__alignof__(lv), 4, "__alignof__(S6491C31)");
+    check_field_offset(lv, s6491c31f0, 0, "S6491C31.s6491c31f0");
+    check_field_offset(lv, s6491c31f1, 4, "S6491C31.s6491c31f1");
+  }
+}
+static Arrange_To_Call_Me vS6491C31(Test_S6491C31, "S6491C31", 8);
+
+#else // __cplusplus
+
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S6491C30  {
+  ::S6491C31 s6491c30f0;
+  int s6491c30f1[2];
+  void  mf6491c30(); // _ZN8S6491C309mf6491c30Ev
+};
+//SIG(-1 S6491C30) C1{ m FC2{ Fc[3] Fi} Fi[2]}
+
+
+void  S6491C30 ::mf6491c30(){}
+
+static void Test_S6491C30()
+{
+  {
+    init_simple_test("S6491C30");
+    S6491C30 lv;
+    check2(sizeof(lv), 16, "sizeof(S6491C30)");
+    check2(__alignof__(lv), 4, "__alignof__(S6491C30)");
+    check_field_offset(lv, s6491c30f0, 0, "S6491C30.s6491c30f0");
+    check_field_offset(lv, s6491c30f1, 8, "S6491C30.s6491c30f1");
+  }
+}
+static Arrange_To_Call_Me vS6491C30(Test_S6491C30, "S6491C30", 16);
+
+#else // __cplusplus
+
+Class_Descriptor cd_S6491C30 = {  "S6491C30", // class name
+  0,0,//no base classes
+  0, // no vftv
+  0, //no vtt
+  16, // object size
+  {0,0},0, // typeinfo_var
+  {0,0},0, // virtual function table var
+  2, // offset into main vftv pointed to by object[0]
+  {0,0},0, // virtual table table var
+  0, // n_initialized_bases
+  0, // has_virtual_bases
+  1, // has_class_type_fields
+  0, // alt-thunk-names
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S6491C26  : S6491C19 {
+  ::S6491C27 s6491c26f0;
+  ::S6491C27 s6491c26f1;
+  ::S6491C21_nt s6491c26f2;
+  ::S6491C21_nt s6491c26f3;
+  ::S6491C21_nt s6491c26f4;
+  ::S6491C21_nt s6491c26f5;
+  ::S6491C21_nt s6491c26f6;
+  ::S6491C30 s6491c26f7;
+  virtual void  v101(); // _ZN8S6491C264v101Ev
+  virtual void  v102(); // _ZN8S6491C264v102Ev
+  virtual void  v103(); // _ZN8S6491C264v103Ev
+  ~S6491C26(); // tgen
+  S6491C26(); // tgen
+};
+//SIG(-1 S6491C26) C1{ BC2{ vd v4 v5 v6 v7 v8 v9 v10 FC3{ m Fp[3]} Fi:1} v1 v2 v3 FC4{ m FC5{ Fp Fi[2]}[16] Fi} FC4 FC6{ m Fp} FC6 FC6 FC6 FC6 FC7{ m FC8{ Fc[3] Fi} Fi[2]}}
+
+
+void  S6491C26 ::v101(){vfunc_called(this, "_ZN8S6491C264v101Ev");}
+void  S6491C26 ::v102(){vfunc_called(this, "_ZN8S6491C264v102Ev");}
+void  S6491C26 ::v103(){vfunc_called(this, "_ZN8S6491C264v103Ev");}
+S6491C26 ::~S6491C26(){ note_dtor("S6491C26", this);} // tgen
+S6491C26 ::S6491C26(){ note_ctor("S6491C26", this);} // tgen
+
+static void Test_S6491C26()
+{
+  extern Class_Descriptor cd_S6491C26;
+  void *lvp;
+  {
+    ABISELECT(double,int) buf[ABISELECT(79,113)];
+    init_test(&cd_S6491C26, buf);
+    S6491C26 *dp, &lv = *(dp=new (buf) S6491C26());
+    lvp = (void*)&lv;
+    check2(sizeof(lv), ABISELECT(624,448), "sizeof(S6491C26)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S6491C26)");
+    check_base_class_offset(lv, (S6491C19*), 0, "S6491C26");
+    check_field_offset(lv, s6491c26f0, ABISELECT(40,20), "S6491C26.s6491c26f0");
+    check_field_offset(lv, s6491c26f1, ABISELECT(304,216), "S6491C26.s6491c26f1");
+    check_field_offset(lv, s6491c26f2, ABISELECT(568,412), "S6491C26.s6491c26f2");
+    check_field_offset(lv, s6491c26f3, ABISELECT(576,416), "S6491C26.s6491c26f3");
+    check_field_offset(lv, s6491c26f4, ABISELECT(584,420), "S6491C26.s6491c26f4");
+    check_field_offset(lv, s6491c26f5, ABISELECT(592,424), "S6491C26.s6491c26f5");
+    check_field_offset(lv, s6491c26f6, ABISELECT(600,428), "S6491C26.s6491c26f6");
+    check_field_offset(lv, s6491c26f7, ABISELECT(608,432), "S6491C26.s6491c26f7");
+    test_class_info(&lv, &cd_S6491C26);
+    dp->~S6491C26();
+  }
+  Check_Ctor_Dtor_Calls(lvp);
+}
+static Arrange_To_Call_Me vS6491C26(Test_S6491C26, "S6491C26", ABISELECT(624,448));
+
+#else // __cplusplus
+
+extern void _ZN8S6491C26C1Ev();
+extern void _ZN8S6491C26D1Ev();
+Name_Map name_map_S6491C26[] = {
+  NSPAIR(_ZN8S6491C26C1Ev),
+  NSPAIR(_ZN8S6491C26D1Ev),
+  {0,0}
+};
+extern Class_Descriptor cd_S6491C19;
+extern VTBL_ENTRY _ZTI8S6491C19[];
+extern  VTBL_ENTRY _ZTV8S6491C19[];
+static Base_Class bases_S6491C26[] = {
+  // ofst, vfto, nneg, vtt_idx, base_vtt_idx, init_seq, direct, virtual
+  {&cd_S6491C19,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    1, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {0}};
+extern VTBL_ENTRY _ZTI8S6491C26[];
+extern void _ZN8S6491C26D1Ev();
+extern void _ZN8S6491C26D0Ev();
+extern void _ZN8S6491C193v80Ev();
+extern void _ZN8S6491C193v81Ev();
+extern void _ZN8S6491C193v82Ev();
+extern void _ZN8S6491C193v83Ev();
+extern void _ZN8S6491C193v84Ev();
+extern void _ZN8S6491C193v85Ev();
+extern void _ZN8S6491C193v86Ev();
+extern void _ZN8S6491C264v101Ev();
+extern void _ZN8S6491C264v102Ev();
+extern void _ZN8S6491C264v103Ev();
+static  VTBL_ENTRY vtc_S6491C26[] = {
+  0,
+  (VTBL_ENTRY)&(_ZTI8S6491C26[0]),
+  (VTBL_ENTRY)&_ZN8S6491C26D1Ev,
+  (VTBL_ENTRY)&_ZN8S6491C26D0Ev,
+  (VTBL_ENTRY)&_ZN8S6491C193v80Ev,
+  (VTBL_ENTRY)&_ZN8S6491C193v81Ev,
+  (VTBL_ENTRY)&_ZN8S6491C193v82Ev,
+  (VTBL_ENTRY)&_ZN8S6491C193v83Ev,
+  (VTBL_ENTRY)&_ZN8S6491C193v84Ev,
+  (VTBL_ENTRY)&_ZN8S6491C193v85Ev,
+  (VTBL_ENTRY)&_ZN8S6491C193v86Ev,
+  (VTBL_ENTRY)&_ZN8S6491C264v101Ev,
+  (VTBL_ENTRY)&_ZN8S6491C264v102Ev,
+  (VTBL_ENTRY)&_ZN8S6491C264v103Ev,
+};
+extern VTBL_ENTRY _ZTI8S6491C26[];
+extern  VTBL_ENTRY _ZTV8S6491C26[];
+Class_Descriptor cd_S6491C26 = {  "S6491C26", // class name
+  bases_S6491C26, 1,
+  &(vtc_S6491C26[0]), // expected_vtbl_contents
+  0, //no vtt
+  ABISELECT(624,448), // object size
+  NSPAIRA(_ZTI8S6491C26),ABISELECT(24,12), //typeinfo_var
+  NSPAIRA(_ZTV8S6491C26),14, //virtual function table var
+  2, // offset into main vftv pointed to by object[0]
+  {0,0},0, // virtual table table var
+  1, // n_initialized_bases
+  0, // has_virtual_bases
+  1, // has_class_type_fields
+  0, // alt-thunk-names
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S6491C33  {
+  void *s6491c33f0;
+  char s6491c33f1[3];
+  int s6491c33f2;
+  void  mf6491c33(); // _ZN8S6491C339mf6491c33Ev
+};
+//SIG(-1 S6491C33) C1{ m Fp Fc[3] Fi}
+
+
+void  S6491C33 ::mf6491c33(){}
+
+static void Test_S6491C33()
+{
+  {
+    init_simple_test("S6491C33");
+    S6491C33 lv;
+    check2(sizeof(lv), ABISELECT(16,12), "sizeof(S6491C33)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S6491C33)");
+    check_field_offset(lv, s6491c33f0, 0, "S6491C33.s6491c33f0");
+    check_field_offset(lv, s6491c33f1, ABISELECT(8,4), "S6491C33.s6491c33f1");
+    check_field_offset(lv, s6491c33f2, ABISELECT(12,8), "S6491C33.s6491c33f2");
+  }
+}
+static Arrange_To_Call_Me vS6491C33(Test_S6491C33, "S6491C33", ABISELECT(16,12));
+
+#else // __cplusplus
+
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S6491C34  {
+  ::S6491C33 s6491c34f0[4];
+  int s6491c34f1;
+  void  mf6491c34(); // _ZN8S6491C349mf6491c34Ev
+};
+//SIG(-1 S6491C34) C1{ m FC2{ m Fp Fc[3] Fi}[4] Fi}
+
+
+void  S6491C34 ::mf6491c34(){}
+
+static void Test_S6491C34()
+{
+  {
+    init_simple_test("S6491C34");
+    S6491C34 lv;
+    check2(sizeof(lv), ABISELECT(72,52), "sizeof(S6491C34)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S6491C34)");
+    check_field_offset(lv, s6491c34f0, 0, "S6491C34.s6491c34f0");
+    check_field_offset(lv, s6491c34f1, ABISELECT(64,48), "S6491C34.s6491c34f1");
+  }
+}
+static Arrange_To_Call_Me vS6491C34(Test_S6491C34, "S6491C34", ABISELECT(72,52));
+
+#else // __cplusplus
+
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S6491C32  : S6491C30 {
+  ::S6491C33 s6491c32f0;
+  ::S6491C33 s6491c32f1[2];
+  ::S6491C34 s6491c32f2;
+  ::S6491C33 s6491c32f3;
+  ::S6491C33 s6491c32f4;
+};
+//SIG(-1 S6491C32) C1{ BC2{ m FC3{ Fc[3] Fi} Fi[2]} FC4{ m Fp Fc[3] Fi} FC4[2] FC5{ m FC4[4] Fi} FC4 FC4}
+
+
+
+static void Test_S6491C32()
+{
+  extern Class_Descriptor cd_S6491C32;
+  void *lvp;
+  {
+    ABISELECT(double,int) buf[ABISELECT(22,33)];
+    init_test(&cd_S6491C32, buf);
+    S6491C32 &lv = *(new (buf) S6491C32());
+    lvp = (void*)&lv;
+    check2(sizeof(lv), ABISELECT(168,128), "sizeof(S6491C32)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S6491C32)");
+    check_base_class_offset(lv, (S6491C30*), 0, "S6491C32");
+    check_field_offset(lv, s6491c32f0, 16, "S6491C32.s6491c32f0");
+    check_field_offset(lv, s6491c32f1, ABISELECT(32,28), "S6491C32.s6491c32f1");
+    check_field_offset(lv, s6491c32f2, ABISELECT(64,52), "S6491C32.s6491c32f2");
+    check_field_offset(lv, s6491c32f3, ABISELECT(136,104), "S6491C32.s6491c32f3");
+    check_field_offset(lv, s6491c32f4, ABISELECT(152,116), "S6491C32.s6491c32f4");
+    test_class_info(&lv, &cd_S6491C32);
+  }
+  Check_Ctor_Dtor_Calls(lvp);
+}
+static Arrange_To_Call_Me vS6491C32(Test_S6491C32, "S6491C32", ABISELECT(168,128));
+
+#else // __cplusplus
+
+extern Class_Descriptor cd_S6491C30;
+static Base_Class bases_S6491C32[] = {
+  // ofst, vfto, nneg, vtt_idx, base_vtt_idx, init_seq, direct, virtual
+  {&cd_S6491C30,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    -1, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {0}};
+Class_Descriptor cd_S6491C32 = {  "S6491C32", // class name
+  bases_S6491C32, 1,
+  0, // no vftv
+  0, //no vtt
+  ABISELECT(168,128), // object size
+  {0,0},0, // typeinfo_var
+  {0,0},0, // virtual function table var
+  2, // offset into main vftv pointed to by object[0]
+  {0,0},0, // virtual table table var
+  0, // n_initialized_bases
+  0, // has_virtual_bases
+  1, // has_class_type_fields
+  0, // alt-thunk-names
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S6491C25  : S6491C26 {
+  ::S6491C32 s6491c25f0;
+  virtual void  v99(); // _ZN8S6491C253v99Ev
+  virtual void  v100(); // _ZN8S6491C254v100Ev
+  ~S6491C25(); // tgen
+  S6491C25(); // tgen
+};
+//SIG(-1 S6491C25) C1{ BC2{ BC3{ vd v3 v4 v5 v6 v7 v8 v9 FC4{ m Fp[3]} Fi:1} v10 v11 v12 FC5{ m FC6{ Fp Fi[2]}[16] Fi} FC5 FC7{ m Fp} FC7 FC7 FC7 FC7 FC8{ m FC9{ Fc[3] Fi} Fi[2]}} v1 v2 FC10{ BC8 FC11{ m Fp Fc[3] Fi} FC11[2] FC12{ m FC11[4] Fi} FC11 FC11}}
+
+
+void  S6491C25 ::v99(){vfunc_called(this, "_ZN8S6491C253v99Ev");}
+void  S6491C25 ::v100(){vfunc_called(this, "_ZN8S6491C254v100Ev");}
+S6491C25 ::~S6491C25(){ note_dtor("S6491C25", this);} // tgen
+S6491C25 ::S6491C25(){ note_ctor("S6491C25", this);} // tgen
+
+static void Test_S6491C25()
+{
+  extern Class_Descriptor cd_S6491C25;
+  void *lvp;
+  {
+    ABISELECT(double,int) buf[ABISELECT(100,145)];
+    init_test(&cd_S6491C25, buf);
+    S6491C25 *dp, &lv = *(dp=new (buf) S6491C25());
+    lvp = (void*)&lv;
+    check2(sizeof(lv), ABISELECT(792,576), "sizeof(S6491C25)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S6491C25)");
+    check_base_class_offset(lv, (S6491C19*)(S6491C26*), 0, "S6491C25");
+    check_base_class_offset(lv, (S6491C26*), 0, "S6491C25");
+    check_field_offset(lv, s6491c25f0, ABISELECT(624,448), "S6491C25.s6491c25f0");
+    test_class_info(&lv, &cd_S6491C25);
+    dp->~S6491C25();
+  }
+  Check_Ctor_Dtor_Calls(lvp);
+}
+static Arrange_To_Call_Me vS6491C25(Test_S6491C25, "S6491C25", ABISELECT(792,576));
+
+#else // __cplusplus
+
+extern void _ZN8S6491C25C1Ev();
+extern void _ZN8S6491C25D1Ev();
+Name_Map name_map_S6491C25[] = {
+  NSPAIR(_ZN8S6491C25C1Ev),
+  NSPAIR(_ZN8S6491C25D1Ev),
+  {0,0}
+};
+extern Class_Descriptor cd_S6491C19;
+extern VTBL_ENTRY _ZTI8S6491C19[];
+extern  VTBL_ENTRY _ZTV8S6491C19[];
+extern Class_Descriptor cd_S6491C26;
+extern VTBL_ENTRY _ZTI8S6491C26[];
+extern  VTBL_ENTRY _ZTV8S6491C26[];
+static Base_Class bases_S6491C25[] = {
+  // ofst, vfto, nneg, vtt_idx, base_vtt_idx, init_seq, direct, virtual
+  {&cd_S6491C19,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    1, //init_seq
+    1, //immediately_derived
+  0, 0},
+  {&cd_S6491C26,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    2, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {0}};
+extern VTBL_ENTRY _ZTI8S6491C25[];
+extern void _ZN8S6491C25D1Ev();
+extern void _ZN8S6491C25D0Ev();
+extern void _ZN8S6491C193v80Ev();
+extern void _ZN8S6491C193v81Ev();
+extern void _ZN8S6491C193v82Ev();
+extern void _ZN8S6491C193v83Ev();
+extern void _ZN8S6491C193v84Ev();
+extern void _ZN8S6491C193v85Ev();
+extern void _ZN8S6491C193v86Ev();
+extern void _ZN8S6491C264v101Ev();
+extern void _ZN8S6491C264v102Ev();
+extern void _ZN8S6491C264v103Ev();
+extern void _ZN8S6491C253v99Ev();
+extern void _ZN8S6491C254v100Ev();
+static  VTBL_ENTRY vtc_S6491C25[] = {
+  0,
+  (VTBL_ENTRY)&(_ZTI8S6491C25[0]),
+  (VTBL_ENTRY)&_ZN8S6491C25D1Ev,
+  (VTBL_ENTRY)&_ZN8S6491C25D0Ev,
+  (VTBL_ENTRY)&_ZN8S6491C193v80Ev,
+  (VTBL_ENTRY)&_ZN8S6491C193v81Ev,
+  (VTBL_ENTRY)&_ZN8S6491C193v82Ev,
+  (VTBL_ENTRY)&_ZN8S6491C193v83Ev,
+  (VTBL_ENTRY)&_ZN8S6491C193v84Ev,
+  (VTBL_ENTRY)&_ZN8S6491C193v85Ev,
+  (VTBL_ENTRY)&_ZN8S6491C193v86Ev,
+  (VTBL_ENTRY)&_ZN8S6491C264v101Ev,
+  (VTBL_ENTRY)&_ZN8S6491C264v102Ev,
+  (VTBL_ENTRY)&_ZN8S6491C264v103Ev,
+  (VTBL_ENTRY)&_ZN8S6491C253v99Ev,
+  (VTBL_ENTRY)&_ZN8S6491C254v100Ev,
+};
+extern VTBL_ENTRY _ZTI8S6491C25[];
+extern  VTBL_ENTRY _ZTV8S6491C25[];
+Class_Descriptor cd_S6491C25 = {  "S6491C25", // class name
+  bases_S6491C25, 2,
+  &(vtc_S6491C25[0]), // expected_vtbl_contents
+  0, //no vtt
+  ABISELECT(792,576), // object size
+  NSPAIRA(_ZTI8S6491C25),ABISELECT(24,12), //typeinfo_var
+  NSPAIRA(_ZTV8S6491C25),16, //virtual function table var
+  2, // offset into main vftv pointed to by object[0]
+  {0,0},0, // virtual table table var
+  2, // n_initialized_bases
+  0, // has_virtual_bases
+  1, // has_class_type_fields
+  0, // alt-thunk-names
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S6491C39  {
+  ::S6491C33 s6491c39f0;
+  ::S6491C33 s6491c39f1;
+  int s6491c39f2;
+  void  mf6491c39(); // _ZN8S6491C399mf6491c39Ev
+};
+//SIG(-1 S6491C39) C1{ m FC2{ m Fp Fc[3] Fi} FC2 Fi}
+
+
+void  S6491C39 ::mf6491c39(){}
+
+static void Test_S6491C39()
+{
+  {
+    init_simple_test("S6491C39");
+    S6491C39 lv;
+    check2(sizeof(lv), ABISELECT(40,28), "sizeof(S6491C39)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S6491C39)");
+    check_field_offset(lv, s6491c39f0, 0, "S6491C39.s6491c39f0");
+    check_field_offset(lv, s6491c39f1, ABISELECT(16,12), "S6491C39.s6491c39f1");
+    check_field_offset(lv, s6491c39f2, ABISELECT(32,24), "S6491C39.s6491c39f2");
+  }
+}
+static Arrange_To_Call_Me vS6491C39(Test_S6491C39, "S6491C39", ABISELECT(40,28));
+
+#else // __cplusplus
+
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S6491C38  : S6491C26 {
+  ::S6491C39 s6491c38f0;
+  virtual void  v110(); // _ZN8S6491C384v110Ev
+  virtual void  v111(); // _ZN8S6491C384v111Ev
+  ~S6491C38(); // tgen
+  S6491C38(); // tgen
+};
+//SIG(-1 S6491C38) C1{ BC2{ BC3{ vd v3 v4 v5 v6 v7 v8 v9 FC4{ m Fp[3]} Fi:1} v10 v11 v12 FC5{ m FC6{ Fp Fi[2]}[16] Fi} FC5 FC7{ m Fp} FC7 FC7 FC7 FC7 FC8{ m FC9{ Fc[3] Fi} Fi[2]}} v1 v2 FC10{ m FC11{ m Fp Fc[3] Fi} FC11 Fi}}
+
+
+void  S6491C38 ::v110(){vfunc_called(this, "_ZN8S6491C384v110Ev");}
+void  S6491C38 ::v111(){vfunc_called(this, "_ZN8S6491C384v111Ev");}
+S6491C38 ::~S6491C38(){ note_dtor("S6491C38", this);} // tgen
+S6491C38 ::S6491C38(){ note_ctor("S6491C38", this);} // tgen
+
+static void Test_S6491C38()
+{
+  extern Class_Descriptor cd_S6491C38;
+  void *lvp;
+  {
+    ABISELECT(double,int) buf[ABISELECT(84,120)];
+    init_test(&cd_S6491C38, buf);
+    S6491C38 *dp, &lv = *(dp=new (buf) S6491C38());
+    lvp = (void*)&lv;
+    check2(sizeof(lv), ABISELECT(664,476), "sizeof(S6491C38)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S6491C38)");
+    check_base_class_offset(lv, (S6491C19*)(S6491C26*), 0, "S6491C38");
+    check_base_class_offset(lv, (S6491C26*), 0, "S6491C38");
+    check_field_offset(lv, s6491c38f0, ABISELECT(624,448), "S6491C38.s6491c38f0");
+    test_class_info(&lv, &cd_S6491C38);
+    dp->~S6491C38();
+  }
+  Check_Ctor_Dtor_Calls(lvp);
+}
+static Arrange_To_Call_Me vS6491C38(Test_S6491C38, "S6491C38", ABISELECT(664,476));
+
+#else // __cplusplus
+
+extern void _ZN8S6491C38C1Ev();
+extern void _ZN8S6491C38D1Ev();
+Name_Map name_map_S6491C38[] = {
+  NSPAIR(_ZN8S6491C38C1Ev),
+  NSPAIR(_ZN8S6491C38D1Ev),
+  {0,0}
+};
+extern Class_Descriptor cd_S6491C19;
+extern VTBL_ENTRY _ZTI8S6491C19[];
+extern  VTBL_ENTRY _ZTV8S6491C19[];
+extern Class_Descriptor cd_S6491C26;
+extern VTBL_ENTRY _ZTI8S6491C26[];
+extern  VTBL_ENTRY _ZTV8S6491C26[];
+static Base_Class bases_S6491C38[] = {
+  // ofst, vfto, nneg, vtt_idx, base_vtt_idx, init_seq, direct, virtual
+  {&cd_S6491C19,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    1, //init_seq
+    1, //immediately_derived
+  0, 0},
+  {&cd_S6491C26,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    2, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {0}};
+extern VTBL_ENTRY _ZTI8S6491C38[];
+extern void _ZN8S6491C38D1Ev();
+extern void _ZN8S6491C38D0Ev();
+extern void _ZN8S6491C193v80Ev();
+extern void _ZN8S6491C193v81Ev();
+extern void _ZN8S6491C193v82Ev();
+extern void _ZN8S6491C193v83Ev();
+extern void _ZN8S6491C193v84Ev();
+extern void _ZN8S6491C193v85Ev();
+extern void _ZN8S6491C193v86Ev();
+extern void _ZN8S6491C264v101Ev();
+extern void _ZN8S6491C264v102Ev();
+extern void _ZN8S6491C264v103Ev();
+extern void _ZN8S6491C384v110Ev();
+extern void _ZN8S6491C384v111Ev();
+static  VTBL_ENTRY vtc_S6491C38[] = {
+  0,
+  (VTBL_ENTRY)&(_ZTI8S6491C38[0]),
+  (VTBL_ENTRY)&_ZN8S6491C38D1Ev,
+  (VTBL_ENTRY)&_ZN8S6491C38D0Ev,
+  (VTBL_ENTRY)&_ZN8S6491C193v80Ev,
+  (VTBL_ENTRY)&_ZN8S6491C193v81Ev,
+  (VTBL_ENTRY)&_ZN8S6491C193v82Ev,
+  (VTBL_ENTRY)&_ZN8S6491C193v83Ev,
+  (VTBL_ENTRY)&_ZN8S6491C193v84Ev,
+  (VTBL_ENTRY)&_ZN8S6491C193v85Ev,
+  (VTBL_ENTRY)&_ZN8S6491C193v86Ev,
+  (VTBL_ENTRY)&_ZN8S6491C264v101Ev,
+  (VTBL_ENTRY)&_ZN8S6491C264v102Ev,
+  (VTBL_ENTRY)&_ZN8S6491C264v103Ev,
+  (VTBL_ENTRY)&_ZN8S6491C384v110Ev,
+  (VTBL_ENTRY)&_ZN8S6491C384v111Ev,
+};
+extern VTBL_ENTRY _ZTI8S6491C38[];
+extern  VTBL_ENTRY _ZTV8S6491C38[];
+Class_Descriptor cd_S6491C38 = {  "S6491C38", // class name
+  bases_S6491C38, 2,
+  &(vtc_S6491C38[0]), // expected_vtbl_contents
+  0, //no vtt
+  ABISELECT(664,476), // object size
+  NSPAIRA(_ZTI8S6491C38),ABISELECT(24,12), //typeinfo_var
+  NSPAIRA(_ZTV8S6491C38),16, //virtual function table var
+  2, // offset into main vftv pointed to by object[0]
+  {0,0},0, // virtual table table var
+  2, // n_initialized_bases
+  0, // has_virtual_bases
+  1, // has_class_type_fields
+  0, // alt-thunk-names
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S6491C37  : S6491C18 {
+  int s6491c37f0[2];
+  ::S6491C38 s6491c37f1;
+  virtual void  v106(); // _ZN8S6491C374v106Ev
+  virtual void  v107(); // _ZN8S6491C374v107Ev
+  virtual void  v108(); // _ZN8S6491C374v108Ev
+  virtual void  v109(); // _ZN8S6491C374v109Ev
+  ~S6491C37(); // tgen
+  S6491C37(); // tgen
+};
+//SIG(-1 S6491C37) C1{ BC2{ BC3{ vd v5 v6 v7 v8 v9 v10 v11 FC4{ m Fp[3]} Fi:1} vd v12 v13 FC5{ m Fp}} v1 v2 v3 v4 Fi[2] FC6{ BC7{ BC3 v16 v17 v18 FC8{ m FC9{ Fp Fi[2]}[16] Fi} FC8 FC5 FC5 FC5 FC5 FC5 FC10{ m FC11{ Fc[3] Fi} Fi[2]}} v14 v15 FC12{ m FC13{ m Fp Fc[3] Fi} FC13 Fi}}}
+
+
+void  S6491C37 ::v106(){vfunc_called(this, "_ZN8S6491C374v106Ev");}
+void  S6491C37 ::v107(){vfunc_called(this, "_ZN8S6491C374v107Ev");}
+void  S6491C37 ::v108(){vfunc_called(this, "_ZN8S6491C374v108Ev");}
+void  S6491C37 ::v109(){vfunc_called(this, "_ZN8S6491C374v109Ev");}
+S6491C37 ::~S6491C37(){ note_dtor("S6491C37", this);} // tgen
+S6491C37 ::S6491C37(){ note_ctor("S6491C37", this);} // tgen
+
+static void Test_S6491C37()
+{
+  extern Class_Descriptor cd_S6491C37;
+  void *lvp;
+  {
+    ABISELECT(double,int) buf[ABISELECT(91,128)];
+    init_test(&cd_S6491C37, buf);
+    S6491C37 *dp, &lv = *(dp=new (buf) S6491C37());
+    lvp = (void*)&lv;
+    check2(sizeof(lv), ABISELECT(720,508), "sizeof(S6491C37)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S6491C37)");
+    check_base_class_offset(lv, (S6491C19*)(S6491C18*), 0, "S6491C37");
+    check_base_class_offset(lv, (S6491C18*), 0, "S6491C37");
+    check_field_offset(lv, s6491c37f0, ABISELECT(48,24), "S6491C37.s6491c37f0");
+    check_field_offset(lv, s6491c37f1, ABISELECT(56,32), "S6491C37.s6491c37f1");
+    test_class_info(&lv, &cd_S6491C37);
+    dp->~S6491C37();
+  }
+  Check_Ctor_Dtor_Calls(lvp);
+}
+static Arrange_To_Call_Me vS6491C37(Test_S6491C37, "S6491C37", ABISELECT(720,508));
+
+#else // __cplusplus
+
+extern void _ZN8S6491C37C1Ev();
+extern void _ZN8S6491C37D1Ev();
+Name_Map name_map_S6491C37[] = {
+  NSPAIR(_ZN8S6491C37C1Ev),
+  NSPAIR(_ZN8S6491C37D1Ev),
+  {0,0}
+};
+extern Class_Descriptor cd_S6491C19;
+extern VTBL_ENTRY _ZTI8S6491C19[];
+extern  VTBL_ENTRY _ZTV8S6491C19[];
+extern Class_Descriptor cd_S6491C18;
+extern VTBL_ENTRY _ZTI8S6491C18[];
+extern  VTBL_ENTRY _ZTV8S6491C18[];
+static Base_Class bases_S6491C37[] = {
+  // ofst, vfto, nneg, vtt_idx, base_vtt_idx, init_seq, direct, virtual
+  {&cd_S6491C19,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    1, //init_seq
+    1, //immediately_derived
+  0, 0},
+  {&cd_S6491C18,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    2, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {0}};
+extern VTBL_ENTRY _ZTI8S6491C37[];
+extern void _ZN8S6491C37D1Ev();
+extern void _ZN8S6491C37D0Ev();
+extern void _ZN8S6491C193v80Ev();
+extern void _ZN8S6491C193v81Ev();
+extern void _ZN8S6491C193v82Ev();
+extern void _ZN8S6491C193v83Ev();
+extern void _ZN8S6491C193v84Ev();
+extern void _ZN8S6491C193v85Ev();
+extern void _ZN8S6491C193v86Ev();
+extern void _ZN8S6491C183v87Ev();
+extern void _ZN8S6491C183v88Ev();
+extern void _ZN8S6491C374v106Ev();
+extern void _ZN8S6491C374v107Ev();
+extern void _ZN8S6491C374v108Ev();
+extern void _ZN8S6491C374v109Ev();
+static  VTBL_ENTRY vtc_S6491C37[] = {
+  0,
+  (VTBL_ENTRY)&(_ZTI8S6491C37[0]),
+  (VTBL_ENTRY)&_ZN8S6491C37D1Ev,
+  (VTBL_ENTRY)&_ZN8S6491C37D0Ev,
+  (VTBL_ENTRY)&_ZN8S6491C193v80Ev,
+  (VTBL_ENTRY)&_ZN8S6491C193v81Ev,
+  (VTBL_ENTRY)&_ZN8S6491C193v82Ev,
+  (VTBL_ENTRY)&_ZN8S6491C193v83Ev,
+  (VTBL_ENTRY)&_ZN8S6491C193v84Ev,
+  (VTBL_ENTRY)&_ZN8S6491C193v85Ev,
+  (VTBL_ENTRY)&_ZN8S6491C193v86Ev,
+  (VTBL_ENTRY)&_ZN8S6491C183v87Ev,
+  (VTBL_ENTRY)&_ZN8S6491C183v88Ev,
+  (VTBL_ENTRY)&_ZN8S6491C374v106Ev,
+  (VTBL_ENTRY)&_ZN8S6491C374v107Ev,
+  (VTBL_ENTRY)&_ZN8S6491C374v108Ev,
+  (VTBL_ENTRY)&_ZN8S6491C374v109Ev,
+};
+extern VTBL_ENTRY _ZTI8S6491C37[];
+extern  VTBL_ENTRY _ZTV8S6491C37[];
+Class_Descriptor cd_S6491C37 = {  "S6491C37", // class name
+  bases_S6491C37, 2,
+  &(vtc_S6491C37[0]), // expected_vtbl_contents
+  0, //no vtt
+  ABISELECT(720,508), // object size
+  NSPAIRA(_ZTI8S6491C37),ABISELECT(24,12), //typeinfo_var
+  NSPAIRA(_ZTV8S6491C37),17, //virtual function table var
+  2, // offset into main vftv pointed to by object[0]
+  {0,0},0, // virtual table table var
+  2, // n_initialized_bases
+  0, // has_virtual_bases
+  1, // has_class_type_fields
+  0, // alt-thunk-names
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S6491C36  : S6491C37 {
+  void *s6491c36f0;
+  virtual void  v104(); // _ZN8S6491C364v104Ev
+  virtual void  v105(); // _ZN8S6491C364v105Ev
+  ~S6491C36(); // tgen
+  S6491C36(); // tgen
+};
+//SIG(-1 S6491C36) C1{ BC2{ BC3{ BC4{ vd v3 v4 v5 v6 v7 v8 v9 FC5{ m Fp[3]} Fi:1} vd v10 v11 FC6{ m Fp}} v12 v13 v14 v15 Fi[2] FC7{ BC8{ BC4 v18 v19 v20 FC9{ m FC10{ Fp Fi[2]}[16] Fi} FC9 FC6 FC6 FC6 FC6 FC6 FC11{ m FC12{ Fc[3] Fi} Fi[2]}} v16 v17 FC13{ m FC14{ m Fp Fc[3] Fi} FC14 Fi}}} v1 v2 Fp}
+
+
+void  S6491C36 ::v104(){vfunc_called(this, "_ZN8S6491C364v104Ev");}
+void  S6491C36 ::v105(){vfunc_called(this, "_ZN8S6491C364v105Ev");}
+S6491C36 ::~S6491C36(){ note_dtor("S6491C36", this);} // tgen
+S6491C36 ::S6491C36(){ note_ctor("S6491C36", this);} // tgen
+
+static void Test_S6491C36()
+{
+  extern Class_Descriptor cd_S6491C36;
+  void *lvp;
+  {
+    ABISELECT(double,int) buf[ABISELECT(92,129)];
+    init_test(&cd_S6491C36, buf);
+    S6491C36 *dp, &lv = *(dp=new (buf) S6491C36());
+    lvp = (void*)&lv;
+    check2(sizeof(lv), ABISELECT(728,512), "sizeof(S6491C36)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S6491C36)");
+    check_base_class_offset(lv, (S6491C19*)(S6491C18*)(S6491C37*), 0, "S6491C36");
+    check_base_class_offset(lv, (S6491C18*)(S6491C37*), 0, "S6491C36");
+    check_base_class_offset(lv, (S6491C37*), 0, "S6491C36");
+    check_field_offset(lv, s6491c36f0, ABISELECT(720,508), "S6491C36.s6491c36f0");
+    test_class_info(&lv, &cd_S6491C36);
+    dp->~S6491C36();
+  }
+  Check_Ctor_Dtor_Calls(lvp);
+}
+static Arrange_To_Call_Me vS6491C36(Test_S6491C36, "S6491C36", ABISELECT(728,512));
+
+#else // __cplusplus
+
+extern void _ZN8S6491C36C1Ev();
+extern void _ZN8S6491C36D1Ev();
+Name_Map name_map_S6491C36[] = {
+  NSPAIR(_ZN8S6491C36C1Ev),
+  NSPAIR(_ZN8S6491C36D1Ev),
+  {0,0}
+};
+extern Class_Descriptor cd_S6491C19;
+extern VTBL_ENTRY _ZTI8S6491C19[];
+extern  VTBL_ENTRY _ZTV8S6491C19[];
+extern Class_Descriptor cd_S6491C18;
+extern VTBL_ENTRY _ZTI8S6491C18[];
+extern  VTBL_ENTRY _ZTV8S6491C18[];
+extern Class_Descriptor cd_S6491C37;
+extern VTBL_ENTRY _ZTI8S6491C37[];
+extern  VTBL_ENTRY _ZTV8S6491C37[];
+static Base_Class bases_S6491C36[] = {
+  // ofst, vfto, nneg, vtt_idx, base_vtt_idx, init_seq, direct, virtual
+  {&cd_S6491C19,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    1, //init_seq
+    1, //immediately_derived
+  0, 0},
+  {&cd_S6491C18,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    2, //init_seq
+    2, //immediately_derived
+  0, 0},
+  {&cd_S6491C37,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    3, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {0}};
+extern VTBL_ENTRY _ZTI8S6491C36[];
+extern void _ZN8S6491C36D1Ev();
+extern void _ZN8S6491C36D0Ev();
+extern void _ZN8S6491C193v80Ev();
+extern void _ZN8S6491C193v81Ev();
+extern void _ZN8S6491C193v82Ev();
+extern void _ZN8S6491C193v83Ev();
+extern void _ZN8S6491C193v84Ev();
+extern void _ZN8S6491C193v85Ev();
+extern void _ZN8S6491C193v86Ev();
+extern void _ZN8S6491C183v87Ev();
+extern void _ZN8S6491C183v88Ev();
+extern void _ZN8S6491C374v106Ev();
+extern void _ZN8S6491C374v107Ev();
+extern void _ZN8S6491C374v108Ev();
+extern void _ZN8S6491C374v109Ev();
+extern void _ZN8S6491C364v104Ev();
+extern void _ZN8S6491C364v105Ev();
+static  VTBL_ENTRY vtc_S6491C36[] = {
+  0,
+  (VTBL_ENTRY)&(_ZTI8S6491C36[0]),
+  (VTBL_ENTRY)&_ZN8S6491C36D1Ev,
+  (VTBL_ENTRY)&_ZN8S6491C36D0Ev,
+  (VTBL_ENTRY)&_ZN8S6491C193v80Ev,
+  (VTBL_ENTRY)&_ZN8S6491C193v81Ev,
+  (VTBL_ENTRY)&_ZN8S6491C193v82Ev,
+  (VTBL_ENTRY)&_ZN8S6491C193v83Ev,
+  (VTBL_ENTRY)&_ZN8S6491C193v84Ev,
+  (VTBL_ENTRY)&_ZN8S6491C193v85Ev,
+  (VTBL_ENTRY)&_ZN8S6491C193v86Ev,
+  (VTBL_ENTRY)&_ZN8S6491C183v87Ev,
+  (VTBL_ENTRY)&_ZN8S6491C183v88Ev,
+  (VTBL_ENTRY)&_ZN8S6491C374v106Ev,
+  (VTBL_ENTRY)&_ZN8S6491C374v107Ev,
+  (VTBL_ENTRY)&_ZN8S6491C374v108Ev,
+  (VTBL_ENTRY)&_ZN8S6491C374v109Ev,
+  (VTBL_ENTRY)&_ZN8S6491C364v104Ev,
+  (VTBL_ENTRY)&_ZN8S6491C364v105Ev,
+};
+extern VTBL_ENTRY _ZTI8S6491C36[];
+extern  VTBL_ENTRY _ZTV8S6491C36[];
+Class_Descriptor cd_S6491C36 = {  "S6491C36", // class name
+  bases_S6491C36, 3,
+  &(vtc_S6491C36[0]), // expected_vtbl_contents
+  0, //no vtt
+  ABISELECT(728,512), // object size
+  NSPAIRA(_ZTI8S6491C36),ABISELECT(24,12), //typeinfo_var
+  NSPAIRA(_ZTV8S6491C36),19, //virtual function table var
+  2, // offset into main vftv pointed to by object[0]
+  {0,0},0, // virtual table table var
+  3, // n_initialized_bases
+  0, // has_virtual_bases
+  1, // has_class_type_fields
+  0, // alt-thunk-names
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S6491C40_nt  {
+  int s6491c40f0;
+  void  mf6491c40(); // _ZN11S6491C40_nt9mf6491c40Ev
+};
+//SIG(-1 S6491C40_nt) C1{ m Fi}
+
+
+void  S6491C40_nt ::mf6491c40(){}
+
+//skip512 S6491C40_nt
+
+#else // __cplusplus
+
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S6491C42_nt  {
+  __tsi64 s6491c42f0;
+  void  mf6491c42(); // _ZN11S6491C42_nt9mf6491c42Ev
+};
+//SIG(-1 S6491C42_nt) C1{ m FL}
+
+
+void  S6491C42_nt ::mf6491c42(){}
+
+//skip512 S6491C42_nt
+
+#else // __cplusplus
+
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S6491C41  {
+  void *s6491c41f0;
+  int s6491c41f1;
+  ::S6491C42_nt s6491c41f2;
+  ::S6491C42_nt s6491c41f3;
+};
+//SIG(1 S6491C41) C1{ Fp Fi FC2{ m FL} FC2}
+
+
+
+static void Test_S6491C41()
+{
+  {
+    init_simple_test("S6491C41");
+    S6491C41 lv;
+    check2(sizeof(lv), ABISELECT(32,24), "sizeof(S6491C41)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S6491C41)");
+    check_field_offset(lv, s6491c41f0, 0, "S6491C41.s6491c41f0");
+    check_field_offset(lv, s6491c41f1, ABISELECT(8,4), "S6491C41.s6491c41f1");
+    check_field_offset(lv, s6491c41f2, ABISELECT(16,8), "S6491C41.s6491c41f2");
+    check_field_offset(lv, s6491c41f3, ABISELECT(24,16), "S6491C41.s6491c41f3");
+  }
+}
+static Arrange_To_Call_Me vS6491C41(Test_S6491C41, "S6491C41", ABISELECT(32,24));
+
+#else // __cplusplus
+
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S6491C43_nt  {
+  ::S485C29_nt s6491c43f0;
+  ::S485C29_nt s6491c43f1;
+  int s6491c43f2;
+  void  mf6491c43(); // _ZN11S6491C43_nt9mf6491c43Ev
+};
+//SIG(-1 S6491C43_nt) C1{ m FC2{ m Fi[3]} FC2 Fi}
+
+
+void  S6491C43_nt ::mf6491c43(){}
+
+//skip512 S6491C43_nt
+
+#else // __cplusplus
+
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S6491C1  : S6491C2 {
+  void *s6491c1f0;
+  ::S6491C4 s6491c1f1;
+  ::S6491C4 s6491c1f2;
+  ::S6491C9 s6491c1f3;
+  ::S6491C9 s6491c1f4;
+  ::S6491C9 s6491c1f5;
+  ::S485C43 s6491c1f6;
+  ::S485C39 s6491c1f7;
+  ::S485C43 s6491c1f8;
+  ::S6491C15 s6491c1f9;
+  ::S6491C17 s6491c1f10;
+  ::S6491C25 s6491c1f11;
+  ::S485C14 s6491c1f12;
+  ::S6491C36 s6491c1f13;
+  ::S6491C40_nt s6491c1f14;
+  int s6491c1f15[7];
+  ::S6491C41 s6491c1f16[64];
+  ::S6491C43_nt s6491c1f17;
+  virtual  ~S6491C1(); // _ZN7S6491C1D1Ev
+  virtual void  v1(); // _ZN7S6491C12v1Ev
+  virtual void  v2(); // _ZN7S6491C12v2Ev
+  virtual void  v3(); // _ZN7S6491C12v3Ev
+  virtual void  v4(); // _ZN7S6491C12v4Ev
+  virtual void  v5(); // _ZN7S6491C12v5Ev
+  virtual void  v6(); // _ZN7S6491C12v6Ev
+  virtual void  v7(); // _ZN7S6491C12v7Ev
+  virtual void  v8(); // _ZN7S6491C12v8Ev
+  virtual void  v9(); // _ZN7S6491C12v9Ev
+  virtual void  v10(); // _ZN7S6491C13v10Ev
+  virtual void  v11(); // _ZN7S6491C13v11Ev
+  virtual void  v12(); // _ZN7S6491C13v12Ev
+  virtual void  v13(); // _ZN7S6491C13v13Ev
+  S6491C1(); // tgen
+};
+//SIG(1 S6491C1) C1{ BC2{ vd v14 v15 v16 v17 v18 v19 v20 v21 v22 v23 v24 v25 v26 v27 v28 v29 v30 v31 v32 v33 v34 v35 v36 v37 v38 v39 v40 v41 v42 v43 v44 v45 v46 v47 v48 v49 v50 v51 v52 v53 v54 v55 v56 v57 v58 v59 v60 v61 v62 v63 v64 v65 v66 v67 v68 v69 v70 v71 v72 v73 v74 v75 v76 v77 Fi FL Fp[4] Fi[2] Fp FC3{ m Fi[2]} Fp[2]} vd v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 v13 Fp FC4{ BC5{ BC6{ m Fp Fi[2]}} Fp} FC4 FC7{ BC8{ BC6} Fp} FC7 FC7 FC9{ BC6} FC10{ BC6} FC9 FC11{ m Fp Fi[2] FC12{ BC6} Fp} FC13{ BC14{ BC15{ vd v80 v81 v82 v83 v84 v85 v86 FC16{ m Fp[3]} Fi:1} vd v87 v88 FC17{ m Fp}} v78 v79 FC18{ BC19{ BC6} BC20{ v94 v95 v96 v97 v98} v89 v90 v91 v92 v93 Fi} Fp} FC21{ BC22{ BC15 v101 v102 v103 FC23{ m FC24{ Fp Fi[2]}[16] Fi} FC23 FC17 FC17 FC17 FC17 FC17 FC25{ m FC26{ Fc[3] Fi} Fi[2]}} v99 v100 FC27{ BC25 FC28{ m Fp Fc[3] Fi} FC28[2] FC29{ m FC28[4] Fi} FC28 FC28}} FC30{ BC6} FC31{ BC32{ BC14 v106 v107 v108 v109 Fi[2] FC33{ BC22 v110 v111 FC34{ m FC28 FC28 Fi}}} v104 v105 Fp!
 } FC35{ m
  Fi} Fi[7] FC36{ Fp Fi FC37{ m FL} FC37}[64] FC38{ m FC39{ m Fi[3]} FC39 Fi}}
+
+
+ S6491C1 ::~S6491C1(){ note_dtor("S6491C1", this);}
+void  S6491C1 ::v1(){vfunc_called(this, "_ZN7S6491C12v1Ev");}
+void  S6491C1 ::v2(){vfunc_called(this, "_ZN7S6491C12v2Ev");}
+void  S6491C1 ::v3(){vfunc_called(this, "_ZN7S6491C12v3Ev");}
+void  S6491C1 ::v4(){vfunc_called(this, "_ZN7S6491C12v4Ev");}
+void  S6491C1 ::v5(){vfunc_called(this, "_ZN7S6491C12v5Ev");}
+void  S6491C1 ::v6(){vfunc_called(this, "_ZN7S6491C12v6Ev");}
+void  S6491C1 ::v7(){vfunc_called(this, "_ZN7S6491C12v7Ev");}
+void  S6491C1 ::v8(){vfunc_called(this, "_ZN7S6491C12v8Ev");}
+void  S6491C1 ::v9(){vfunc_called(this, "_ZN7S6491C12v9Ev");}
+void  S6491C1 ::v10(){vfunc_called(this, "_ZN7S6491C13v10Ev");}
+void  S6491C1 ::v11(){vfunc_called(this, "_ZN7S6491C13v11Ev");}
+void  S6491C1 ::v12(){vfunc_called(this, "_ZN7S6491C13v12Ev");}
+void  S6491C1 ::v13(){vfunc_called(this, "_ZN7S6491C13v13Ev");}
+S6491C1 ::S6491C1(){ note_ctor("S6491C1", this);} // tgen
+
+static void Test_S6491C1()
+{
+  extern Class_Descriptor cd_S6491C1;
+  void *lvp;
+  {
+    ABISELECT(double,int) buf[ABISELECT(507,739)];
+    init_test(&cd_S6491C1, buf);
+    S6491C1 *dp, &lv = *(dp=new (buf) S6491C1());
+    lvp = (void*)&lv;
+    check2(sizeof(lv), ABISELECT(4048,2952), "sizeof(S6491C1)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S6491C1)");
+    check_base_class_offset(lv, (S6491C2*), 0, "S6491C1");
+    check_field_offset(lv, s6491c1f0, ABISELECT(96,60), "S6491C1.s6491c1f0");
+    check_field_offset(lv, s6491c1f1, ABISELECT(104,64), "S6491C1.s6491c1f1");
+    check_field_offset(lv, s6491c1f2, ABISELECT(128,80), "S6491C1.s6491c1f2");
+    check_field_offset(lv, s6491c1f3, ABISELECT(152,96), "S6491C1.s6491c1f3");
+    check_field_offset(lv, s6491c1f4, ABISELECT(176,112), "S6491C1.s6491c1f4");
+    check_field_offset(lv, s6491c1f5, ABISELECT(200,128), "S6491C1.s6491c1f5");
+    check_field_offset(lv, s6491c1f6, ABISELECT(224,144), "S6491C1.s6491c1f6");
+    check_field_offset(lv, s6491c1f7, ABISELECT(240,156), "S6491C1.s6491c1f7");
+    check_field_offset(lv, s6491c1f8, ABISELECT(256,168), "S6491C1.s6491c1f8");
+    check_field_offset(lv, s6491c1f9, ABISELECT(272,180), "S6491C1.s6491c1f9");
+    check_field_offset(lv, s6491c1f10, ABISELECT(312,208), "S6491C1.s6491c1f10");
+    check_field_offset(lv, s6491c1f11, ABISELECT(400,256), "S6491C1.s6491c1f11");
+    check_field_offset(lv, s6491c1f12, ABISELECT(1192,832), "S6491C1.s6491c1f12");
+    check_field_offset(lv, s6491c1f13, ABISELECT(1208,844), "S6491C1.s6491c1f13");
+    check_field_offset(lv, s6491c1f14, ABISELECT(1936,1356), "S6491C1.s6491c1f14");
+    check_field_offset(lv, s6491c1f15, ABISELECT(1940,1360), "S6491C1.s6491c1f15");
+    check_field_offset(lv, s6491c1f16, ABISELECT(1968,1388), "S6491C1.s6491c1f16");
+    check_field_offset(lv, s6491c1f17, ABISELECT(4016,2924), "S6491C1.s6491c1f17");
+    test_class_info(&lv, &cd_S6491C1);
+    dp->~S6491C1();
+  }
+  Check_Ctor_Dtor_Calls(lvp);
+}
+static Arrange_To_Call_Me vS6491C1(Test_S6491C1, "S6491C1", ABISELECT(4048,2952));
+
+#else // __cplusplus
+
+extern void _ZN7S6491C1C1Ev();
+extern void _ZN7S6491C1D1Ev();
+Name_Map name_map_S6491C1[] = {
+  NSPAIR(_ZN7S6491C1C1Ev),
+  NSPAIR(_ZN7S6491C1D1Ev),
+  {0,0}
+};
+extern Class_Descriptor cd_S6491C2;
+extern VTBL_ENTRY _ZTI7S6491C2[];
+extern  VTBL_ENTRY _ZTV7S6491C2[];
+static Base_Class bases_S6491C1[] = {
+  // ofst, vfto, nneg, vtt_idx, base_vtt_idx, init_seq, direct, virtual
+  {&cd_S6491C2,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    1, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {0}};
+extern VTBL_ENTRY _ZTI7S6491C1[];
+extern void _ZN7S6491C1D1Ev();
+extern void _ZN7S6491C1D0Ev();
+extern void _ZN7S6491C23v14Ev();
+extern void _ZN7S6491C23v15Ev();
+extern void _ZN7S6491C23v16Ev();
+extern void _ZN7S6491C23v17Ev();
+extern void _ZN7S6491C23v18Ev();
+extern void _ZN7S6491C23v19Ev();
+extern void _ZN7S6491C23v20Ev();
+extern void _ZN7S6491C23v21Ev();
+extern void _ZN7S6491C23v22Ev();
+extern void _ZN7S6491C23v23Ev();
+extern void _ZN7S6491C23v24Ev();
+extern void _ZN7S6491C23v25Ev();
+extern void _ZN7S6491C23v26Ev();
+extern void _ZN7S6491C23v27Ev();
+extern void _ZN7S6491C23v28Ev();
+extern void _ZN7S6491C23v29Ev();
+extern void _ZN7S6491C23v30Ev();
+extern void _ZN7S6491C23v31Ev();
+extern void _ZN7S6491C23v32Ev();
+extern void _ZN7S6491C23v33Ev();
+extern void _ZN7S6491C23v34Ev();
+extern void _ZN7S6491C23v35Ev();
+extern void _ZN7S6491C23v36Ev();
+extern void _ZN7S6491C23v37Ev();
+extern void _ZN7S6491C23v38Ev();
+extern void _ZN7S6491C23v39Ev();
+extern void _ZN7S6491C23v40Ev();
+extern void _ZN7S6491C23v41Ev();
+extern void _ZN7S6491C23v42Ev();
+extern void _ZN7S6491C23v43Ev();
+extern void _ZN7S6491C23v44Ev();
+extern void _ZN7S6491C23v45Ev();
+extern void _ZN7S6491C23v46Ev();
+extern void _ZN7S6491C23v47Ev();
+extern void _ZN7S6491C23v48Ev();
+extern void _ZN7S6491C23v49Ev();
+extern void _ZN7S6491C23v50Ev();
+extern void _ZN7S6491C23v51Ev();
+extern void _ZN7S6491C23v52Ev();
+extern void _ZN7S6491C23v53Ev();
+extern void _ZN7S6491C23v54Ev();
+extern void _ZN7S6491C23v55Ev();
+extern void _ZN7S6491C23v56Ev();
+extern void _ZN7S6491C23v57Ev();
+extern void _ZN7S6491C23v58Ev();
+extern void _ZN7S6491C23v59Ev();
+extern void _ZN7S6491C23v60Ev();
+extern void _ZN7S6491C23v61Ev();
+extern void _ZN7S6491C23v62Ev();
+extern void _ZN7S6491C23v63Ev();
+extern void _ZN7S6491C23v64Ev();
+extern void _ZN7S6491C23v65Ev();
+extern void _ZN7S6491C23v66Ev();
+extern void _ZN7S6491C23v67Ev();
+extern void _ZN7S6491C23v68Ev();
+extern void _ZN7S6491C23v69Ev();
+extern void _ZN7S6491C23v70Ev();
+extern void _ZN7S6491C23v71Ev();
+extern void _ZN7S6491C23v72Ev();
+extern void _ZN7S6491C23v73Ev();
+extern void _ZN7S6491C23v74Ev();
+extern void _ZN7S6491C23v75Ev();
+extern void _ZN7S6491C23v76Ev();
+extern void _ZN7S6491C23v77Ev();
+extern void _ZN7S6491C12v1Ev();
+extern void _ZN7S6491C12v2Ev();
+extern void _ZN7S6491C12v3Ev();
+extern void _ZN7S6491C12v4Ev();
+extern void _ZN7S6491C12v5Ev();
+extern void _ZN7S6491C12v6Ev();
+extern void _ZN7S6491C12v7Ev();
+extern void _ZN7S6491C12v8Ev();
+extern void _ZN7S6491C12v9Ev();
+extern void _ZN7S6491C13v10Ev();
+extern void _ZN7S6491C13v11Ev();
+extern void _ZN7S6491C13v12Ev();
+extern void _ZN7S6491C13v13Ev();
+static  VTBL_ENTRY vtc_S6491C1[] = {
+  0,
+  (VTBL_ENTRY)&(_ZTI7S6491C1[0]),
+  (VTBL_ENTRY)&_ZN7S6491C1D1Ev,
+  (VTBL_ENTRY)&_ZN7S6491C1D0Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v14Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v15Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v16Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v17Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v18Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v19Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v20Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v21Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v22Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v23Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v24Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v25Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v26Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v27Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v28Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v29Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v30Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v31Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v32Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v33Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v34Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v35Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v36Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v37Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v38Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v39Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v40Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v41Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v42Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v43Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v44Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v45Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v46Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v47Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v48Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v49Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v50Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v51Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v52Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v53Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v54Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v55Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v56Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v57Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v58Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v59Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v60Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v61Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v62Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v63Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v64Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v65Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v66Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v67Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v68Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v69Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v70Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v71Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v72Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v73Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v74Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v75Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v76Ev,
+  (VTBL_ENTRY)&_ZN7S6491C23v77Ev,
+  (VTBL_ENTRY)&_ZN7S6491C12v1Ev,
+  (VTBL_ENTRY)&_ZN7S6491C12v2Ev,
+  (VTBL_ENTRY)&_ZN7S6491C12v3Ev,
+  (VTBL_ENTRY)&_ZN7S6491C12v4Ev,
+  (VTBL_ENTRY)&_ZN7S6491C12v5Ev,
+  (VTBL_ENTRY)&_ZN7S6491C12v6Ev,
+  (VTBL_ENTRY)&_ZN7S6491C12v7Ev,
+  (VTBL_ENTRY)&_ZN7S6491C12v8Ev,
+  (VTBL_ENTRY)&_ZN7S6491C12v9Ev,
+  (VTBL_ENTRY)&_ZN7S6491C13v10Ev,
+  (VTBL_ENTRY)&_ZN7S6491C13v11Ev,
+  (VTBL_ENTRY)&_ZN7S6491C13v12Ev,
+  (VTBL_ENTRY)&_ZN7S6491C13v13Ev,
+};
+extern VTBL_ENTRY _ZTI7S6491C1[];
+extern  VTBL_ENTRY _ZTV7S6491C1[];
+Class_Descriptor cd_S6491C1 = {  "S6491C1", // class name
+  bases_S6491C1, 1,
+  &(vtc_S6491C1[0]), // expected_vtbl_contents
+  0, //no vtt
+  ABISELECT(4048,2952), // object size
+  NSPAIRA(_ZTI7S6491C1),ABISELECT(24,12), //typeinfo_var
+  NSPAIRA(_ZTV7S6491C1),81, //virtual function table var
+  2, // offset into main vftv pointed to by object[0]
+  {0,0},0, // virtual table table var
+  1, // n_initialized_bases
+  0, // has_virtual_bases
+  1, // has_class_type_fields
+  0, // alt-thunk-names
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S591C5  {
+  int s591c5f0;
+  __tsi64 s591c5f1;
+  void *s591c5f2[4];
+  int s591c5f3[2];
+  void *s591c5f4;
+  ::S485C6_nt s591c5f5;
+  void *s591c5f6[2];
+  virtual  ~S591C5(); // _ZN6S591C5D1Ev
+  virtual void  v4(); // _ZN6S591C52v4Ev
+  virtual void  v5(); // _ZN6S591C52v5Ev
+  virtual void  v6(); // _ZN6S591C52v6Ev
+  virtual void  v7(); // _ZN6S591C52v7Ev
+  virtual void  v8(); // _ZN6S591C52v8Ev
+  virtual void  v9(); // _ZN6S591C52v9Ev
+  virtual void  v10(); // _ZN6S591C53v10Ev
+  virtual void  v11(); // _ZN6S591C53v11Ev
+  virtual void  v12(); // _ZN6S591C53v12Ev
+  virtual void  v13(); // _ZN6S591C53v13Ev
+  virtual void  v14(); // _ZN6S591C53v14Ev
+  virtual void  v15(); // _ZN6S591C53v15Ev
+  virtual void  v16(); // _ZN6S591C53v16Ev
+  virtual void  v17(); // _ZN6S591C53v17Ev
+  virtual void  v18(); // _ZN6S591C53v18Ev
+  virtual void  v19(); // _ZN6S591C53v19Ev
+  virtual void  v20(); // _ZN6S591C53v20Ev
+  virtual void  v21(); // _ZN6S591C53v21Ev
+  virtual void  v22(); // _ZN6S591C53v22Ev
+  virtual void  v23(); // _ZN6S591C53v23Ev
+  virtual void  v24(); // _ZN6S591C53v24Ev
+  virtual void  v25(); // _ZN6S591C53v25Ev
+  virtual void  v26(); // _ZN6S591C53v26Ev
+  virtual void  v27(); // _ZN6S591C53v27Ev
+  virtual void  v28(); // _ZN6S591C53v28Ev
+  virtual void  v29(); // _ZN6S591C53v29Ev
+  virtual void  v30(); // _ZN6S591C53v30Ev
+  virtual void  v31(); // _ZN6S591C53v31Ev
+  virtual void  v32(); // _ZN6S591C53v32Ev
+  virtual void  v33(); // _ZN6S591C53v33Ev
+  virtual void  v34(); // _ZN6S591C53v34Ev
+  virtual void  v35(); // _ZN6S591C53v35Ev
+  virtual void  v36(); // _ZN6S591C53v36Ev
+  virtual void  v37(); // _ZN6S591C53v37Ev
+  virtual void  v38(); // _ZN6S591C53v38Ev
+  virtual void  v39(); // _ZN6S591C53v39Ev
+  virtual void  v40(); // _ZN6S591C53v40Ev
+  virtual void  v41(); // _ZN6S591C53v41Ev
+  virtual void  v42(); // _ZN6S591C53v42Ev
+  virtual void  v43(); // _ZN6S591C53v43Ev
+  virtual void  v44(); // _ZN6S591C53v44Ev
+  virtual void  v45(); // _ZN6S591C53v45Ev
+  virtual void  v46(); // _ZN6S591C53v46Ev
+  virtual void  v47(); // _ZN6S591C53v47Ev
+  virtual void  v48(); // _ZN6S591C53v48Ev
+  virtual void  v49(); // _ZN6S591C53v49Ev
+  virtual void  v50(); // _ZN6S591C53v50Ev
+  virtual void  v51(); // _ZN6S591C53v51Ev
+  virtual void  v52(); // _ZN6S591C53v52Ev
+  virtual void  v53(); // _ZN6S591C53v53Ev
+  virtual void  v54(); // _ZN6S591C53v54Ev
+  virtual void  v55(); // _ZN6S591C53v55Ev
+  virtual void  v56(); // _ZN6S591C53v56Ev
+  virtual void  v57(); // _ZN6S591C53v57Ev
+  virtual void  v58(); // _ZN6S591C53v58Ev
+  virtual void  v59(); // _ZN6S591C53v59Ev
+  virtual void  v60(); // _ZN6S591C53v60Ev
+  virtual void  v61(); // _ZN6S591C53v61Ev
+  virtual void  v62(); // _ZN6S591C53v62Ev
+  virtual void  v63(); // _ZN6S591C53v63Ev
+  virtual void  v64(); // _ZN6S591C53v64Ev
+  virtual void  v65(); // _ZN6S591C53v65Ev
+  virtual void  v66(); // _ZN6S591C53v66Ev
+  virtual void  v67(); // _ZN6S591C53v67Ev
+  S591C5(); // tgen
+};
+//SIG(-1 S591C5) C1{ vd v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 v13 v14 v15 v16 v17 v18 v19 v20 v21 v22 v23 v24 v25 v26 v27 v28 v29 v30 v31 v32 v33 v34 v35 v36 v37 v38 v39 v40 v41 v42 v43 v44 v45 v46 v47 v48 v49 v50 v51 v52 v53 v54 v55 v56 v57 v58 v59 v60 v61 v62 v63 v64 Fi FL Fp[4] Fi[2] Fp FC2{ m Fi[2]} Fp[2]}
+
+
+ S591C5 ::~S591C5(){ note_dtor("S591C5", this);}
+void  S591C5 ::v4(){vfunc_called(this, "_ZN6S591C52v4Ev");}
+void  S591C5 ::v5(){vfunc_called(this, "_ZN6S591C52v5Ev");}
+void  S591C5 ::v6(){vfunc_called(this, "_ZN6S591C52v6Ev");}
+void  S591C5 ::v7(){vfunc_called(this, "_ZN6S591C52v7Ev");}
+void  S591C5 ::v8(){vfunc_called(this, "_ZN6S591C52v8Ev");}
+void  S591C5 ::v9(){vfunc_called(this, "_ZN6S591C52v9Ev");}
+void  S591C5 ::v10(){vfunc_called(this, "_ZN6S591C53v10Ev");}
+void  S591C5 ::v11(){vfunc_called(this, "_ZN6S591C53v11Ev");}
+void  S591C5 ::v12(){vfunc_called(this, "_ZN6S591C53v12Ev");}
+void  S591C5 ::v13(){vfunc_called(this, "_ZN6S591C53v13Ev");}
+void  S591C5 ::v14(){vfunc_called(this, "_ZN6S591C53v14Ev");}
+void  S591C5 ::v15(){vfunc_called(this, "_ZN6S591C53v15Ev");}
+void  S591C5 ::v16(){vfunc_called(this, "_ZN6S591C53v16Ev");}
+void  S591C5 ::v17(){vfunc_called(this, "_ZN6S591C53v17Ev");}
+void  S591C5 ::v18(){vfunc_called(this, "_ZN6S591C53v18Ev");}
+void  S591C5 ::v19(){vfunc_called(this, "_ZN6S591C53v19Ev");}
+void  S591C5 ::v20(){vfunc_called(this, "_ZN6S591C53v20Ev");}
+void  S591C5 ::v21(){vfunc_called(this, "_ZN6S591C53v21Ev");}
+void  S591C5 ::v22(){vfunc_called(this, "_ZN6S591C53v22Ev");}
+void  S591C5 ::v23(){vfunc_called(this, "_ZN6S591C53v23Ev");}
+void  S591C5 ::v24(){vfunc_called(this, "_ZN6S591C53v24Ev");}
+void  S591C5 ::v25(){vfunc_called(this, "_ZN6S591C53v25Ev");}
+void  S591C5 ::v26(){vfunc_called(this, "_ZN6S591C53v26Ev");}
+void  S591C5 ::v27(){vfunc_called(this, "_ZN6S591C53v27Ev");}
+void  S591C5 ::v28(){vfunc_called(this, "_ZN6S591C53v28Ev");}
+void  S591C5 ::v29(){vfunc_called(this, "_ZN6S591C53v29Ev");}
+void  S591C5 ::v30(){vfunc_called(this, "_ZN6S591C53v30Ev");}
+void  S591C5 ::v31(){vfunc_called(this, "_ZN6S591C53v31Ev");}
+void  S591C5 ::v32(){vfunc_called(this, "_ZN6S591C53v32Ev");}
+void  S591C5 ::v33(){vfunc_called(this, "_ZN6S591C53v33Ev");}
+void  S591C5 ::v34(){vfunc_called(this, "_ZN6S591C53v34Ev");}
+void  S591C5 ::v35(){vfunc_called(this, "_ZN6S591C53v35Ev");}
+void  S591C5 ::v36(){vfunc_called(this, "_ZN6S591C53v36Ev");}
+void  S591C5 ::v37(){vfunc_called(this, "_ZN6S591C53v37Ev");}
+void  S591C5 ::v38(){vfunc_called(this, "_ZN6S591C53v38Ev");}
+void  S591C5 ::v39(){vfunc_called(this, "_ZN6S591C53v39Ev");}
+void  S591C5 ::v40(){vfunc_called(this, "_ZN6S591C53v40Ev");}
+void  S591C5 ::v41(){vfunc_called(this, "_ZN6S591C53v41Ev");}
+void  S591C5 ::v42(){vfunc_called(this, "_ZN6S591C53v42Ev");}
+void  S591C5 ::v43(){vfunc_called(this, "_ZN6S591C53v43Ev");}
+void  S591C5 ::v44(){vfunc_called(this, "_ZN6S591C53v44Ev");}
+void  S591C5 ::v45(){vfunc_called(this, "_ZN6S591C53v45Ev");}
+void  S591C5 ::v46(){vfunc_called(this, "_ZN6S591C53v46Ev");}
+void  S591C5 ::v47(){vfunc_called(this, "_ZN6S591C53v47Ev");}
+void  S591C5 ::v48(){vfunc_called(this, "_ZN6S591C53v48Ev");}
+void  S591C5 ::v49(){vfunc_called(this, "_ZN6S591C53v49Ev");}
+void  S591C5 ::v50(){vfunc_called(this, "_ZN6S591C53v50Ev");}
+void  S591C5 ::v51(){vfunc_called(this, "_ZN6S591C53v51Ev");}
+void  S591C5 ::v52(){vfunc_called(this, "_ZN6S591C53v52Ev");}
+void  S591C5 ::v53(){vfunc_called(this, "_ZN6S591C53v53Ev");}
+void  S591C5 ::v54(){vfunc_called(this, "_ZN6S591C53v54Ev");}
+void  S591C5 ::v55(){vfunc_called(this, "_ZN6S591C53v55Ev");}
+void  S591C5 ::v56(){vfunc_called(this, "_ZN6S591C53v56Ev");}
+void  S591C5 ::v57(){vfunc_called(this, "_ZN6S591C53v57Ev");}
+void  S591C5 ::v58(){vfunc_called(this, "_ZN6S591C53v58Ev");}
+void  S591C5 ::v59(){vfunc_called(this, "_ZN6S591C53v59Ev");}
+void  S591C5 ::v60(){vfunc_called(this, "_ZN6S591C53v60Ev");}
+void  S591C5 ::v61(){vfunc_called(this, "_ZN6S591C53v61Ev");}
+void  S591C5 ::v62(){vfunc_called(this, "_ZN6S591C53v62Ev");}
+void  S591C5 ::v63(){vfunc_called(this, "_ZN6S591C53v63Ev");}
+void  S591C5 ::v64(){vfunc_called(this, "_ZN6S591C53v64Ev");}
+void  S591C5 ::v65(){vfunc_called(this, "_ZN6S591C53v65Ev");}
+void  S591C5 ::v66(){vfunc_called(this, "_ZN6S591C53v66Ev");}
+void  S591C5 ::v67(){vfunc_called(this, "_ZN6S591C53v67Ev");}
+S591C5 ::S591C5(){ note_ctor("S591C5", this);} // tgen
+
+static void Test_S591C5()
+{
+  extern Class_Descriptor cd_S591C5;
+  void *lvp;
+  {
+    ABISELECT(double,int) buf[ABISELECT(13,16)];
+    init_test(&cd_S591C5, buf);
+    S591C5 *dp, &lv = *(dp=new (buf) S591C5());
+    lvp = (void*)&lv;
+    check2(sizeof(lv), ABISELECT(96,60), "sizeof(S591C5)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S591C5)");
+    check_field_offset(lv, s591c5f0, ABISELECT(8,4), "S591C5.s591c5f0");
+    check_field_offset(lv, s591c5f1, ABISELECT(16,8), "S591C5.s591c5f1");
+    check_field_offset(lv, s591c5f2, ABISELECT(24,16), "S591C5.s591c5f2");
+    check_field_offset(lv, s591c5f3, ABISELECT(56,32), "S591C5.s591c5f3");
+    check_field_offset(lv, s591c5f4, ABISELECT(64,40), "S591C5.s591c5f4");
+    check_field_offset(lv, s591c5f5, ABISELECT(72,44), "S591C5.s591c5f5");
+    check_field_offset(lv, s591c5f6, ABISELECT(80,52), "S591C5.s591c5f6");
+    test_class_info(&lv, &cd_S591C5);
+    dp->~S591C5();
+  }
+  Check_Ctor_Dtor_Calls(lvp);
+}
+static Arrange_To_Call_Me vS591C5(Test_S591C5, "S591C5", ABISELECT(96,60));
+
+#else // __cplusplus
+
+extern void _ZN6S591C5C1Ev();
+extern void _ZN6S591C5D1Ev();
+Name_Map name_map_S591C5[] = {
+  NSPAIR(_ZN6S591C5C1Ev),
+  NSPAIR(_ZN6S591C5D1Ev),
+  {0,0}
+};
+extern VTBL_ENTRY _ZTI6S591C5[];
+extern void _ZN6S591C5D1Ev();
+extern void _ZN6S591C5D0Ev();
+extern void _ZN6S591C52v4Ev();
+extern void _ZN6S591C52v5Ev();
+extern void _ZN6S591C52v6Ev();
+extern void _ZN6S591C52v7Ev();
+extern void _ZN6S591C52v8Ev();
+extern void _ZN6S591C52v9Ev();
+extern void _ZN6S591C53v10Ev();
+extern void _ZN6S591C53v11Ev();
+extern void _ZN6S591C53v12Ev();
+extern void _ZN6S591C53v13Ev();
+extern void _ZN6S591C53v14Ev();
+extern void _ZN6S591C53v15Ev();
+extern void _ZN6S591C53v16Ev();
+extern void _ZN6S591C53v17Ev();
+extern void _ZN6S591C53v18Ev();
+extern void _ZN6S591C53v19Ev();
+extern void _ZN6S591C53v20Ev();
+extern void _ZN6S591C53v21Ev();
+extern void _ZN6S591C53v22Ev();
+extern void _ZN6S591C53v23Ev();
+extern void _ZN6S591C53v24Ev();
+extern void _ZN6S591C53v25Ev();
+extern void _ZN6S591C53v26Ev();
+extern void _ZN6S591C53v27Ev();
+extern void _ZN6S591C53v28Ev();
+extern void _ZN6S591C53v29Ev();
+extern void _ZN6S591C53v30Ev();
+extern void _ZN6S591C53v31Ev();
+extern void _ZN6S591C53v32Ev();
+extern void _ZN6S591C53v33Ev();
+extern void _ZN6S591C53v34Ev();
+extern void _ZN6S591C53v35Ev();
+extern void _ZN6S591C53v36Ev();
+extern void _ZN6S591C53v37Ev();
+extern void _ZN6S591C53v38Ev();
+extern void _ZN6S591C53v39Ev();
+extern void _ZN6S591C53v40Ev();
+extern void _ZN6S591C53v41Ev();
+extern void _ZN6S591C53v42Ev();
+extern void _ZN6S591C53v43Ev();
+extern void _ZN6S591C53v44Ev();
+extern void _ZN6S591C53v45Ev();
+extern void _ZN6S591C53v46Ev();
+extern void _ZN6S591C53v47Ev();
+extern void _ZN6S591C53v48Ev();
+extern void _ZN6S591C53v49Ev();
+extern void _ZN6S591C53v50Ev();
+extern void _ZN6S591C53v51Ev();
+extern void _ZN6S591C53v52Ev();
+extern void _ZN6S591C53v53Ev();
+extern void _ZN6S591C53v54Ev();
+extern void _ZN6S591C53v55Ev();
+extern void _ZN6S591C53v56Ev();
+extern void _ZN6S591C53v57Ev();
+extern void _ZN6S591C53v58Ev();
+extern void _ZN6S591C53v59Ev();
+extern void _ZN6S591C53v60Ev();
+extern void _ZN6S591C53v61Ev();
+extern void _ZN6S591C53v62Ev();
+extern void _ZN6S591C53v63Ev();
+extern void _ZN6S591C53v64Ev();
+extern void _ZN6S591C53v65Ev();
+extern void _ZN6S591C53v66Ev();
+extern void _ZN6S591C53v67Ev();
+static  VTBL_ENTRY vtc_S591C5[] = {
+  0,
+  (VTBL_ENTRY)&(_ZTI6S591C5[0]),
+  (VTBL_ENTRY)&_ZN6S591C5D1Ev,
+  (VTBL_ENTRY)&_ZN6S591C5D0Ev,
+  (VTBL_ENTRY)&_ZN6S591C52v4Ev,
+  (VTBL_ENTRY)&_ZN6S591C52v5Ev,
+  (VTBL_ENTRY)&_ZN6S591C52v6Ev,
+  (VTBL_ENTRY)&_ZN6S591C52v7Ev,
+  (VTBL_ENTRY)&_ZN6S591C52v8Ev,
+  (VTBL_ENTRY)&_ZN6S591C52v9Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v10Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v11Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v12Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v13Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v14Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v15Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v16Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v17Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v18Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v19Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v20Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v21Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v22Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v23Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v24Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v25Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v26Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v27Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v28Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v29Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v30Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v31Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v32Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v33Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v34Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v35Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v36Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v37Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v38Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v39Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v40Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v41Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v42Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v43Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v44Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v45Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v46Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v47Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v48Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v49Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v50Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v51Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v52Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v53Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v54Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v55Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v56Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v57Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v58Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v59Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v60Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v61Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v62Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v63Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v64Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v65Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v66Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v67Ev,
+};
+extern VTBL_ENTRY _ZTI6S591C5[];
+extern  VTBL_ENTRY _ZTV6S591C5[];
+Class_Descriptor cd_S591C5 = {  "S591C5", // class name
+  0,0,//no base classes
+  &(vtc_S591C5[0]), // expected_vtbl_contents
+  0, //no vtt
+  ABISELECT(96,60), // object size
+  NSPAIRA(_ZTI6S591C5),ABISELECT(16,8), //typeinfo_var
+  NSPAIRA(_ZTV6S591C5),68, //virtual function table var
+  2, // offset into main vftv pointed to by object[0]
+  {0,0},0, // virtual table table var
+  0, // n_initialized_bases
+  0, // has_virtual_bases
+  1, // has_class_type_fields
+  0, // alt-thunk-names
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S591C4_nt  : S591C5 {
+  int s591c4f0[2];
+  void *s591c4f1;
+  int s591c4f2[2];
+  ::S485C37_nt s591c4f3;
+  ::S485C37_nt s591c4f4;
+  ::S2261C30 s591c4f5;
+  ::S485C37_nt s591c4f6;
+  unsigned int s591c4f7:1;
+  unsigned int s591c4f8:1;
+  unsigned int s591c4f9:1;
+  unsigned int s591c4f10:1;
+  unsigned int s591c4f11:1;
+  int s591c4f12[2];
+  virtual  ~S591C4_nt(); // _ZN9S591C4_ntD1Ev
+  virtual void  v68(); // _ZN9S591C4_nt3v68Ev
+  virtual void  v69(); // _ZN9S591C4_nt3v69Ev
+  virtual void  v70(); // _ZN9S591C4_nt3v70Ev
+  virtual void  v71(); // _ZN9S591C4_nt3v71Ev
+  virtual void  v72(); // _ZN9S591C4_nt3v72Ev
+  virtual void  v73(); // _ZN9S591C4_nt3v73Ev
+  virtual void  v74(); // _ZN9S591C4_nt3v74Ev
+  virtual void  v75(); // _ZN9S591C4_nt3v75Ev
+  virtual void  v76(); // _ZN9S591C4_nt3v76Ev
+  virtual void  v77(); // _ZN9S591C4_nt3v77Ev
+  virtual void  v78(); // _ZN9S591C4_nt3v78Ev
+  virtual void  v79(); // _ZN9S591C4_nt3v79Ev
+  virtual void  v80(); // _ZN9S591C4_nt3v80Ev
+  virtual void  v81(); // _ZN9S591C4_nt3v81Ev
+  virtual void  v82(); // _ZN9S591C4_nt3v82Ev
+  virtual void  v83(); // _ZN9S591C4_nt3v83Ev
+  virtual void  v84(); // _ZN9S591C4_nt3v84Ev
+  virtual void  v85(); // _ZN9S591C4_nt3v85Ev
+  virtual void  v86(); // _ZN9S591C4_nt3v86Ev
+  virtual void  v87(); // _ZN9S591C4_nt3v87Ev
+  virtual void  v88(); // _ZN9S591C4_nt3v88Ev
+  virtual void  v89(); // _ZN9S591C4_nt3v89Ev
+  S591C4_nt(); // tgen
+};
+//SIG(-1 S591C4_nt) C1{ BC2{ vd v23 v24 v25 v26 v27 v28 v29 v30 v31 v32 v33 v34 v35 v36 v37 v38 v39 v40 v41 v42 v43 v44 v45 v46 v47 v48 v49 v50 v51 v52 v53 v54 v55 v56 v57 v58 v59 v60 v61 v62 v63 v64 v65 v66 v67 v68 v69 v70 v71 v72 v73 v74 v75 v76 v77 v78 v79 v80 v81 v82 v83 v84 v85 v86 Fi FL Fp[4] Fi[2] Fp FC3{ m Fi[2]} Fp[2]} vd v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 v13 v14 v15 v16 v17 v18 v19 v20 v21 v22 Fi[2] Fp Fi[2] FC4{ BC5{ BC6{ BC7{ m Fp Fi[2]}}}} FC4 FC8{ m} FC4 Fi:1 Fi:1 Fi:1 Fi:1 Fi:1 Fi[2]}
+
+
+ S591C4_nt ::~S591C4_nt(){ note_dtor("S591C4_nt", this);}
+void  S591C4_nt ::v68(){vfunc_called(this, "_ZN9S591C4_nt3v68Ev");}
+void  S591C4_nt ::v69(){vfunc_called(this, "_ZN9S591C4_nt3v69Ev");}
+void  S591C4_nt ::v70(){vfunc_called(this, "_ZN9S591C4_nt3v70Ev");}
+void  S591C4_nt ::v71(){vfunc_called(this, "_ZN9S591C4_nt3v71Ev");}
+void  S591C4_nt ::v72(){vfunc_called(this, "_ZN9S591C4_nt3v72Ev");}
+void  S591C4_nt ::v73(){vfunc_called(this, "_ZN9S591C4_nt3v73Ev");}
+void  S591C4_nt ::v74(){vfunc_called(this, "_ZN9S591C4_nt3v74Ev");}
+void  S591C4_nt ::v75(){vfunc_called(this, "_ZN9S591C4_nt3v75Ev");}
+void  S591C4_nt ::v76(){vfunc_called(this, "_ZN9S591C4_nt3v76Ev");}
+void  S591C4_nt ::v77(){vfunc_called(this, "_ZN9S591C4_nt3v77Ev");}
+void  S591C4_nt ::v78(){vfunc_called(this, "_ZN9S591C4_nt3v78Ev");}
+void  S591C4_nt ::v79(){vfunc_called(this, "_ZN9S591C4_nt3v79Ev");}
+void  S591C4_nt ::v80(){vfunc_called(this, "_ZN9S591C4_nt3v80Ev");}
+void  S591C4_nt ::v81(){vfunc_called(this, "_ZN9S591C4_nt3v81Ev");}
+void  S591C4_nt ::v82(){vfunc_called(this, "_ZN9S591C4_nt3v82Ev");}
+void  S591C4_nt ::v83(){vfunc_called(this, "_ZN9S591C4_nt3v83Ev");}
+void  S591C4_nt ::v84(){vfunc_called(this, "_ZN9S591C4_nt3v84Ev");}
+void  S591C4_nt ::v85(){vfunc_called(this, "_ZN9S591C4_nt3v85Ev");}
+void  S591C4_nt ::v86(){vfunc_called(this, "_ZN9S591C4_nt3v86Ev");}
+void  S591C4_nt ::v87(){vfunc_called(this, "_ZN9S591C4_nt3v87Ev");}
+void  S591C4_nt ::v88(){vfunc_called(this, "_ZN9S591C4_nt3v88Ev");}
+void  S591C4_nt ::v89(){vfunc_called(this, "_ZN9S591C4_nt3v89Ev");}
+S591C4_nt ::S591C4_nt(){ note_ctor("S591C4_nt", this);} // tgen
+
+//skip512 S591C4_nt
+
+#else // __cplusplus
+
+extern void _ZN9S591C4_ntC1Ev();
+extern void _ZN9S591C4_ntD1Ev();
+Name_Map name_map_S591C4_nt[] = {
+  NSPAIR(_ZN9S591C4_ntC1Ev),
+  NSPAIR(_ZN9S591C4_ntD1Ev),
+  {0,0}
+};
+extern Class_Descriptor cd_S591C5;
+extern VTBL_ENTRY _ZTI6S591C5[];
+extern  VTBL_ENTRY _ZTV6S591C5[];
+static Base_Class bases_S591C4_nt[] = {
+  // ofst, vfto, nneg, vtt_idx, base_vtt_idx, init_seq, direct, virtual
+  {&cd_S591C5,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    1, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {0}};
+extern VTBL_ENTRY _ZTI9S591C4_nt[];
+extern void _ZN9S591C4_ntD1Ev();
+extern void _ZN9S591C4_ntD0Ev();
+extern void _ZN6S591C52v4Ev();
+extern void _ZN6S591C52v5Ev();
+extern void _ZN6S591C52v6Ev();
+extern void _ZN6S591C52v7Ev();
+extern void _ZN6S591C52v8Ev();
+extern void _ZN6S591C52v9Ev();
+extern void _ZN6S591C53v10Ev();
+extern void _ZN6S591C53v11Ev();
+extern void _ZN6S591C53v12Ev();
+extern void _ZN6S591C53v13Ev();
+extern void _ZN6S591C53v14Ev();
+extern void _ZN6S591C53v15Ev();
+extern void _ZN6S591C53v16Ev();
+extern void _ZN6S591C53v17Ev();
+extern void _ZN6S591C53v18Ev();
+extern void _ZN6S591C53v19Ev();
+extern void _ZN6S591C53v20Ev();
+extern void _ZN6S591C53v21Ev();
+extern void _ZN6S591C53v22Ev();
+extern void _ZN6S591C53v23Ev();
+extern void _ZN6S591C53v24Ev();
+extern void _ZN6S591C53v25Ev();
+extern void _ZN6S591C53v26Ev();
+extern void _ZN6S591C53v27Ev();
+extern void _ZN6S591C53v28Ev();
+extern void _ZN6S591C53v29Ev();
+extern void _ZN6S591C53v30Ev();
+extern void _ZN6S591C53v31Ev();
+extern void _ZN6S591C53v32Ev();
+extern void _ZN6S591C53v33Ev();
+extern void _ZN6S591C53v34Ev();
+extern void _ZN6S591C53v35Ev();
+extern void _ZN6S591C53v36Ev();
+extern void _ZN6S591C53v37Ev();
+extern void _ZN6S591C53v38Ev();
+extern void _ZN6S591C53v39Ev();
+extern void _ZN6S591C53v40Ev();
+extern void _ZN6S591C53v41Ev();
+extern void _ZN6S591C53v42Ev();
+extern void _ZN6S591C53v43Ev();
+extern void _ZN6S591C53v44Ev();
+extern void _ZN6S591C53v45Ev();
+extern void _ZN6S591C53v46Ev();
+extern void _ZN6S591C53v47Ev();
+extern void _ZN6S591C53v48Ev();
+extern void _ZN6S591C53v49Ev();
+extern void _ZN6S591C53v50Ev();
+extern void _ZN6S591C53v51Ev();
+extern void _ZN6S591C53v52Ev();
+extern void _ZN6S591C53v53Ev();
+extern void _ZN6S591C53v54Ev();
+extern void _ZN6S591C53v55Ev();
+extern void _ZN6S591C53v56Ev();
+extern void _ZN6S591C53v57Ev();
+extern void _ZN6S591C53v58Ev();
+extern void _ZN6S591C53v59Ev();
+extern void _ZN6S591C53v60Ev();
+extern void _ZN6S591C53v61Ev();
+extern void _ZN6S591C53v62Ev();
+extern void _ZN6S591C53v63Ev();
+extern void _ZN6S591C53v64Ev();
+extern void _ZN6S591C53v65Ev();
+extern void _ZN6S591C53v66Ev();
+extern void _ZN6S591C53v67Ev();
+extern void _ZN9S591C4_nt3v68Ev();
+extern void _ZN9S591C4_nt3v69Ev();
+extern void _ZN9S591C4_nt3v70Ev();
+extern void _ZN9S591C4_nt3v71Ev();
+extern void _ZN9S591C4_nt3v72Ev();
+extern void _ZN9S591C4_nt3v73Ev();
+extern void _ZN9S591C4_nt3v74Ev();
+extern void _ZN9S591C4_nt3v75Ev();
+extern void _ZN9S591C4_nt3v76Ev();
+extern void _ZN9S591C4_nt3v77Ev();
+extern void _ZN9S591C4_nt3v78Ev();
+extern void _ZN9S591C4_nt3v79Ev();
+extern void _ZN9S591C4_nt3v80Ev();
+extern void _ZN9S591C4_nt3v81Ev();
+extern void _ZN9S591C4_nt3v82Ev();
+extern void _ZN9S591C4_nt3v83Ev();
+extern void _ZN9S591C4_nt3v84Ev();
+extern void _ZN9S591C4_nt3v85Ev();
+extern void _ZN9S591C4_nt3v86Ev();
+extern void _ZN9S591C4_nt3v87Ev();
+extern void _ZN9S591C4_nt3v88Ev();
+extern void _ZN9S591C4_nt3v89Ev();
+static  VTBL_ENTRY vtc_S591C4_nt[] = {
+  0,
+  (VTBL_ENTRY)&(_ZTI9S591C4_nt[0]),
+  (VTBL_ENTRY)&_ZN9S591C4_ntD1Ev,
+  (VTBL_ENTRY)&_ZN9S591C4_ntD0Ev,
+  (VTBL_ENTRY)&_ZN6S591C52v4Ev,
+  (VTBL_ENTRY)&_ZN6S591C52v5Ev,
+  (VTBL_ENTRY)&_ZN6S591C52v6Ev,
+  (VTBL_ENTRY)&_ZN6S591C52v7Ev,
+  (VTBL_ENTRY)&_ZN6S591C52v8Ev,
+  (VTBL_ENTRY)&_ZN6S591C52v9Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v10Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v11Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v12Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v13Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v14Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v15Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v16Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v17Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v18Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v19Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v20Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v21Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v22Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v23Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v24Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v25Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v26Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v27Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v28Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v29Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v30Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v31Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v32Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v33Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v34Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v35Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v36Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v37Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v38Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v39Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v40Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v41Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v42Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v43Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v44Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v45Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v46Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v47Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v48Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v49Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v50Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v51Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v52Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v53Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v54Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v55Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v56Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v57Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v58Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v59Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v60Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v61Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v62Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v63Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v64Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v65Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v66Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v67Ev,
+  (VTBL_ENTRY)&_ZN9S591C4_nt3v68Ev,
+  (VTBL_ENTRY)&_ZN9S591C4_nt3v69Ev,
+  (VTBL_ENTRY)&_ZN9S591C4_nt3v70Ev,
+  (VTBL_ENTRY)&_ZN9S591C4_nt3v71Ev,
+  (VTBL_ENTRY)&_ZN9S591C4_nt3v72Ev,
+  (VTBL_ENTRY)&_ZN9S591C4_nt3v73Ev,
+  (VTBL_ENTRY)&_ZN9S591C4_nt3v74Ev,
+  (VTBL_ENTRY)&_ZN9S591C4_nt3v75Ev,
+  (VTBL_ENTRY)&_ZN9S591C4_nt3v76Ev,
+  (VTBL_ENTRY)&_ZN9S591C4_nt3v77Ev,
+  (VTBL_ENTRY)&_ZN9S591C4_nt3v78Ev,
+  (VTBL_ENTRY)&_ZN9S591C4_nt3v79Ev,
+  (VTBL_ENTRY)&_ZN9S591C4_nt3v80Ev,
+  (VTBL_ENTRY)&_ZN9S591C4_nt3v81Ev,
+  (VTBL_ENTRY)&_ZN9S591C4_nt3v82Ev,
+  (VTBL_ENTRY)&_ZN9S591C4_nt3v83Ev,
+  (VTBL_ENTRY)&_ZN9S591C4_nt3v84Ev,
+  (VTBL_ENTRY)&_ZN9S591C4_nt3v85Ev,
+  (VTBL_ENTRY)&_ZN9S591C4_nt3v86Ev,
+  (VTBL_ENTRY)&_ZN9S591C4_nt3v87Ev,
+  (VTBL_ENTRY)&_ZN9S591C4_nt3v88Ev,
+  (VTBL_ENTRY)&_ZN9S591C4_nt3v89Ev,
+};
+extern VTBL_ENTRY _ZTI9S591C4_nt[];
+VTBL_ENTRY *P__ZTI9S591C4_nt = _ZTI9S591C4_nt; 
+extern  VTBL_ENTRY _ZTV9S591C4_nt[];
+Class_Descriptor cd_S591C4_nt = {  "S591C4_nt", // class name
+  bases_S591C4_nt, 1,
+  &(vtc_S591C4_nt[0]), // expected_vtbl_contents
+  0, //no vtt
+  ABISELECT(192,132), // object size
+  NSPAIRA(_ZTI9S591C4_nt),ABISELECT(24,12), //typeinfo_var
+  NSPAIRA(_ZTV9S591C4_nt),90, //virtual function table var
+  2, // offset into main vftv pointed to by object[0]
+  {0,0},0, // virtual table table var
+  1, // n_initialized_bases
+  0, // has_virtual_bases
+  1, // has_class_type_fields
+  0, // alt-thunk-names
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S591C3_nt  : S591C4_nt {
+  unsigned int s591c3f0:1;
+  unsigned int s591c3f1:1;
+  unsigned int s591c3f2:1;
+  ::S485C42 s591c3f3;
+  ::S485C38 s591c3f4;
+  ::S485C17 s591c3f5;
+  ::S485C13 s591c3f6;
+  int s591c3f7[3];
+  virtual  ~S591C3_nt(); // _ZN9S591C3_ntD1Ev
+  virtual void  v90(); // _ZN9S591C3_nt3v90Ev
+  virtual void  v91(); // _ZN9S591C3_nt3v91Ev
+  virtual void  v92(); // _ZN9S591C3_nt3v92Ev
+  virtual void  v93(); // _ZN9S591C3_nt3v93Ev
+  virtual void  v94(); // _ZN9S591C3_nt3v94Ev
+  virtual void  v95(); // _ZN9S591C3_nt3v95Ev
+  virtual void  v96(); // _ZN9S591C3_nt3v96Ev
+  virtual void  v97(); // _ZN9S591C3_nt3v97Ev
+  virtual void  v98(); // _ZN9S591C3_nt3v98Ev
+  virtual void  v99(); // _ZN9S591C3_nt3v99Ev
+  virtual void  v100(); // _ZN9S591C3_nt4v100Ev
+  virtual void  v101(); // _ZN9S591C3_nt4v101Ev
+  virtual void  v102(); // _ZN9S591C3_nt4v102Ev
+  virtual void  v103(); // _ZN9S591C3_nt4v103Ev
+  virtual void  v104(); // _ZN9S591C3_nt4v104Ev
+  virtual void  v105(); // _ZN9S591C3_nt4v105Ev
+  virtual void  v106(); // _ZN9S591C3_nt4v106Ev
+  virtual void  v107(); // _ZN9S591C3_nt4v107Ev
+  virtual void  v108(); // _ZN9S591C3_nt4v108Ev
+  virtual void  v109(); // _ZN9S591C3_nt4v109Ev
+  S591C3_nt(); // tgen
+};
+//SIG(-1 S591C3_nt) C1{ BC2{ BC3{ vd v21 v22 v23 v24 v25 v26 v27 v28 v29 v30 v31 v32 v33 v34 v35 v36 v37 v38 v39 v40 v41 v42 v43 v44 v45 v46 v47 v48 v49 v50 v51 v52 v53 v54 v55 v56 v57 v58 v59 v60 v61 v62 v63 v64 v65 v66 v67 v68 v69 v70 v71 v72 v73 v74 v75 v76 v77 v78 v79 v80 v81 v82 v83 v84 Fi FL Fp[4] Fi[2] Fp FC4{ m Fi[2]} Fp[2]} vd v85 v86 v87 v88 v89 v90 v91 v92 v93 v94 v95 v96 v97 v98 v99 v100 v101 v102 v103 v104 v105 v106 Fi[2] Fp Fi[2] FC5{ BC6{ BC7{ BC8{ m Fp Fi[2]}}}} FC5 FC9{ m} FC5 Fi:1 Fi:1 Fi:1 Fi:1 Fi:1 Fi[2]} vd v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 v13 v14 v15 v16 v17 v18 v19 v20 Fi:1 Fi:1 Fi:1 FC10{ BC11{ BC8}} FC6 FC12{ BC13{ BC8}} FC14{ BC15{ BC8}} Fi[3]}
+
+
+ S591C3_nt ::~S591C3_nt(){ note_dtor("S591C3_nt", this);}
+void  S591C3_nt ::v90(){vfunc_called(this, "_ZN9S591C3_nt3v90Ev");}
+void  S591C3_nt ::v91(){vfunc_called(this, "_ZN9S591C3_nt3v91Ev");}
+void  S591C3_nt ::v92(){vfunc_called(this, "_ZN9S591C3_nt3v92Ev");}
+void  S591C3_nt ::v93(){vfunc_called(this, "_ZN9S591C3_nt3v93Ev");}
+void  S591C3_nt ::v94(){vfunc_called(this, "_ZN9S591C3_nt3v94Ev");}
+void  S591C3_nt ::v95(){vfunc_called(this, "_ZN9S591C3_nt3v95Ev");}
+void  S591C3_nt ::v96(){vfunc_called(this, "_ZN9S591C3_nt3v96Ev");}
+void  S591C3_nt ::v97(){vfunc_called(this, "_ZN9S591C3_nt3v97Ev");}
+void  S591C3_nt ::v98(){vfunc_called(this, "_ZN9S591C3_nt3v98Ev");}
+void  S591C3_nt ::v99(){vfunc_called(this, "_ZN9S591C3_nt3v99Ev");}
+void  S591C3_nt ::v100(){vfunc_called(this, "_ZN9S591C3_nt4v100Ev");}
+void  S591C3_nt ::v101(){vfunc_called(this, "_ZN9S591C3_nt4v101Ev");}
+void  S591C3_nt ::v102(){vfunc_called(this, "_ZN9S591C3_nt4v102Ev");}
+void  S591C3_nt ::v103(){vfunc_called(this, "_ZN9S591C3_nt4v103Ev");}
+void  S591C3_nt ::v104(){vfunc_called(this, "_ZN9S591C3_nt4v104Ev");}
+void  S591C3_nt ::v105(){vfunc_called(this, "_ZN9S591C3_nt4v105Ev");}
+void  S591C3_nt ::v106(){vfunc_called(this, "_ZN9S591C3_nt4v106Ev");}
+void  S591C3_nt ::v107(){vfunc_called(this, "_ZN9S591C3_nt4v107Ev");}
+void  S591C3_nt ::v108(){vfunc_called(this, "_ZN9S591C3_nt4v108Ev");}
+void  S591C3_nt ::v109(){vfunc_called(this, "_ZN9S591C3_nt4v109Ev");}
+S591C3_nt ::S591C3_nt(){ note_ctor("S591C3_nt", this);} // tgen
+
+//skip512 S591C3_nt
+
+#else // __cplusplus
+
+extern void _ZN9S591C3_ntC1Ev();
+extern void _ZN9S591C3_ntD1Ev();
+Name_Map name_map_S591C3_nt[] = {
+  NSPAIR(_ZN9S591C3_ntC1Ev),
+  NSPAIR(_ZN9S591C3_ntD1Ev),
+  {0,0}
+};
+extern Class_Descriptor cd_S591C5;
+extern VTBL_ENTRY _ZTI6S591C5[];
+extern  VTBL_ENTRY _ZTV6S591C5[];
+extern Class_Descriptor cd_S591C4_nt;
+extern VTBL_ENTRY _ZTI9S591C4_nt[];
+extern  VTBL_ENTRY _ZTV9S591C4_nt[];
+static Base_Class bases_S591C3_nt[] = {
+  // ofst, vfto, nneg, vtt_idx, base_vtt_idx, init_seq, direct, virtual
+  {&cd_S591C5,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    1, //init_seq
+    1, //immediately_derived
+  0, 0},
+  {&cd_S591C4_nt,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    2, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {0}};
+extern VTBL_ENTRY _ZTI9S591C3_nt[];
+extern void _ZN9S591C3_ntD1Ev();
+extern void _ZN9S591C3_ntD0Ev();
+extern void _ZN6S591C52v4Ev();
+extern void _ZN6S591C52v5Ev();
+extern void _ZN6S591C52v6Ev();
+extern void _ZN6S591C52v7Ev();
+extern void _ZN6S591C52v8Ev();
+extern void _ZN6S591C52v9Ev();
+extern void _ZN6S591C53v10Ev();
+extern void _ZN6S591C53v11Ev();
+extern void _ZN6S591C53v12Ev();
+extern void _ZN6S591C53v13Ev();
+extern void _ZN6S591C53v14Ev();
+extern void _ZN6S591C53v15Ev();
+extern void _ZN6S591C53v16Ev();
+extern void _ZN6S591C53v17Ev();
+extern void _ZN6S591C53v18Ev();
+extern void _ZN6S591C53v19Ev();
+extern void _ZN6S591C53v20Ev();
+extern void _ZN6S591C53v21Ev();
+extern void _ZN6S591C53v22Ev();
+extern void _ZN6S591C53v23Ev();
+extern void _ZN6S591C53v24Ev();
+extern void _ZN6S591C53v25Ev();
+extern void _ZN6S591C53v26Ev();
+extern void _ZN6S591C53v27Ev();
+extern void _ZN6S591C53v28Ev();
+extern void _ZN6S591C53v29Ev();
+extern void _ZN6S591C53v30Ev();
+extern void _ZN6S591C53v31Ev();
+extern void _ZN6S591C53v32Ev();
+extern void _ZN6S591C53v33Ev();
+extern void _ZN6S591C53v34Ev();
+extern void _ZN6S591C53v35Ev();
+extern void _ZN6S591C53v36Ev();
+extern void _ZN6S591C53v37Ev();
+extern void _ZN6S591C53v38Ev();
+extern void _ZN6S591C53v39Ev();
+extern void _ZN6S591C53v40Ev();
+extern void _ZN6S591C53v41Ev();
+extern void _ZN6S591C53v42Ev();
+extern void _ZN6S591C53v43Ev();
+extern void _ZN6S591C53v44Ev();
+extern void _ZN6S591C53v45Ev();
+extern void _ZN6S591C53v46Ev();
+extern void _ZN6S591C53v47Ev();
+extern void _ZN6S591C53v48Ev();
+extern void _ZN6S591C53v49Ev();
+extern void _ZN6S591C53v50Ev();
+extern void _ZN6S591C53v51Ev();
+extern void _ZN6S591C53v52Ev();
+extern void _ZN6S591C53v53Ev();
+extern void _ZN6S591C53v54Ev();
+extern void _ZN6S591C53v55Ev();
+extern void _ZN6S591C53v56Ev();
+extern void _ZN6S591C53v57Ev();
+extern void _ZN6S591C53v58Ev();
+extern void _ZN6S591C53v59Ev();
+extern void _ZN6S591C53v60Ev();
+extern void _ZN6S591C53v61Ev();
+extern void _ZN6S591C53v62Ev();
+extern void _ZN6S591C53v63Ev();
+extern void _ZN6S591C53v64Ev();
+extern void _ZN6S591C53v65Ev();
+extern void _ZN6S591C53v66Ev();
+extern void _ZN6S591C53v67Ev();
+extern void _ZN9S591C4_nt3v68Ev();
+extern void _ZN9S591C4_nt3v69Ev();
+extern void _ZN9S591C4_nt3v70Ev();
+extern void _ZN9S591C4_nt3v71Ev();
+extern void _ZN9S591C4_nt3v72Ev();
+extern void _ZN9S591C4_nt3v73Ev();
+extern void _ZN9S591C4_nt3v74Ev();
+extern void _ZN9S591C4_nt3v75Ev();
+extern void _ZN9S591C4_nt3v76Ev();
+extern void _ZN9S591C4_nt3v77Ev();
+extern void _ZN9S591C4_nt3v78Ev();
+extern void _ZN9S591C4_nt3v79Ev();
+extern void _ZN9S591C4_nt3v80Ev();
+extern void _ZN9S591C4_nt3v81Ev();
+extern void _ZN9S591C4_nt3v82Ev();
+extern void _ZN9S591C4_nt3v83Ev();
+extern void _ZN9S591C4_nt3v84Ev();
+extern void _ZN9S591C4_nt3v85Ev();
+extern void _ZN9S591C4_nt3v86Ev();
+extern void _ZN9S591C4_nt3v87Ev();
+extern void _ZN9S591C4_nt3v88Ev();
+extern void _ZN9S591C4_nt3v89Ev();
+extern void _ZN9S591C3_nt3v90Ev();
+extern void _ZN9S591C3_nt3v91Ev();
+extern void _ZN9S591C3_nt3v92Ev();
+extern void _ZN9S591C3_nt3v93Ev();
+extern void _ZN9S591C3_nt3v94Ev();
+extern void _ZN9S591C3_nt3v95Ev();
+extern void _ZN9S591C3_nt3v96Ev();
+extern void _ZN9S591C3_nt3v97Ev();
+extern void _ZN9S591C3_nt3v98Ev();
+extern void _ZN9S591C3_nt3v99Ev();
+extern void _ZN9S591C3_nt4v100Ev();
+extern void _ZN9S591C3_nt4v101Ev();
+extern void _ZN9S591C3_nt4v102Ev();
+extern void _ZN9S591C3_nt4v103Ev();
+extern void _ZN9S591C3_nt4v104Ev();
+extern void _ZN9S591C3_nt4v105Ev();
+extern void _ZN9S591C3_nt4v106Ev();
+extern void _ZN9S591C3_nt4v107Ev();
+extern void _ZN9S591C3_nt4v108Ev();
+extern void _ZN9S591C3_nt4v109Ev();
+static  VTBL_ENTRY vtc_S591C3_nt[] = {
+  0,
+  (VTBL_ENTRY)&(_ZTI9S591C3_nt[0]),
+  (VTBL_ENTRY)&_ZN9S591C3_ntD1Ev,
+  (VTBL_ENTRY)&_ZN9S591C3_ntD0Ev,
+  (VTBL_ENTRY)&_ZN6S591C52v4Ev,
+  (VTBL_ENTRY)&_ZN6S591C52v5Ev,
+  (VTBL_ENTRY)&_ZN6S591C52v6Ev,
+  (VTBL_ENTRY)&_ZN6S591C52v7Ev,
+  (VTBL_ENTRY)&_ZN6S591C52v8Ev,
+  (VTBL_ENTRY)&_ZN6S591C52v9Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v10Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v11Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v12Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v13Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v14Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v15Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v16Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v17Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v18Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v19Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v20Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v21Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v22Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v23Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v24Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v25Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v26Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v27Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v28Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v29Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v30Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v31Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v32Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v33Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v34Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v35Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v36Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v37Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v38Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v39Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v40Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v41Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v42Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v43Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v44Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v45Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v46Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v47Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v48Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v49Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v50Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v51Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v52Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v53Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v54Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v55Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v56Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v57Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v58Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v59Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v60Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v61Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v62Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v63Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v64Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v65Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v66Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v67Ev,
+  (VTBL_ENTRY)&_ZN9S591C4_nt3v68Ev,
+  (VTBL_ENTRY)&_ZN9S591C4_nt3v69Ev,
+  (VTBL_ENTRY)&_ZN9S591C4_nt3v70Ev,
+  (VTBL_ENTRY)&_ZN9S591C4_nt3v71Ev,
+  (VTBL_ENTRY)&_ZN9S591C4_nt3v72Ev,
+  (VTBL_ENTRY)&_ZN9S591C4_nt3v73Ev,
+  (VTBL_ENTRY)&_ZN9S591C4_nt3v74Ev,
+  (VTBL_ENTRY)&_ZN9S591C4_nt3v75Ev,
+  (VTBL_ENTRY)&_ZN9S591C4_nt3v76Ev,
+  (VTBL_ENTRY)&_ZN9S591C4_nt3v77Ev,
+  (VTBL_ENTRY)&_ZN9S591C4_nt3v78Ev,
+  (VTBL_ENTRY)&_ZN9S591C4_nt3v79Ev,
+  (VTBL_ENTRY)&_ZN9S591C4_nt3v80Ev,
+  (VTBL_ENTRY)&_ZN9S591C4_nt3v81Ev,
+  (VTBL_ENTRY)&_ZN9S591C4_nt3v82Ev,
+  (VTBL_ENTRY)&_ZN9S591C4_nt3v83Ev,
+  (VTBL_ENTRY)&_ZN9S591C4_nt3v84Ev,
+  (VTBL_ENTRY)&_ZN9S591C4_nt3v85Ev,
+  (VTBL_ENTRY)&_ZN9S591C4_nt3v86Ev,
+  (VTBL_ENTRY)&_ZN9S591C4_nt3v87Ev,
+  (VTBL_ENTRY)&_ZN9S591C4_nt3v88Ev,
+  (VTBL_ENTRY)&_ZN9S591C4_nt3v89Ev,
+  (VTBL_ENTRY)&_ZN9S591C3_nt3v90Ev,
+  (VTBL_ENTRY)&_ZN9S591C3_nt3v91Ev,
+  (VTBL_ENTRY)&_ZN9S591C3_nt3v92Ev,
+  (VTBL_ENTRY)&_ZN9S591C3_nt3v93Ev,
+  (VTBL_ENTRY)&_ZN9S591C3_nt3v94Ev,
+  (VTBL_ENTRY)&_ZN9S591C3_nt3v95Ev,
+  (VTBL_ENTRY)&_ZN9S591C3_nt3v96Ev,
+  (VTBL_ENTRY)&_ZN9S591C3_nt3v97Ev,
+  (VTBL_ENTRY)&_ZN9S591C3_nt3v98Ev,
+  (VTBL_ENTRY)&_ZN9S591C3_nt3v99Ev,
+  (VTBL_ENTRY)&_ZN9S591C3_nt4v100Ev,
+  (VTBL_ENTRY)&_ZN9S591C3_nt4v101Ev,
+  (VTBL_ENTRY)&_ZN9S591C3_nt4v102Ev,
+  (VTBL_ENTRY)&_ZN9S591C3_nt4v103Ev,
+  (VTBL_ENTRY)&_ZN9S591C3_nt4v104Ev,
+  (VTBL_ENTRY)&_ZN9S591C3_nt4v105Ev,
+  (VTBL_ENTRY)&_ZN9S591C3_nt4v106Ev,
+  (VTBL_ENTRY)&_ZN9S591C3_nt4v107Ev,
+  (VTBL_ENTRY)&_ZN9S591C3_nt4v108Ev,
+  (VTBL_ENTRY)&_ZN9S591C3_nt4v109Ev,
+};
+extern VTBL_ENTRY _ZTI9S591C3_nt[];
+VTBL_ENTRY *P__ZTI9S591C3_nt = _ZTI9S591C3_nt; 
+extern  VTBL_ENTRY _ZTV9S591C3_nt[];
+Class_Descriptor cd_S591C3_nt = {  "S591C3_nt", // class name
+  bases_S591C3_nt, 2,
+  &(vtc_S591C3_nt[0]), // expected_vtbl_contents
+  0, //no vtt
+  ABISELECT(272,196), // object size
+  NSPAIRA(_ZTI9S591C3_nt),ABISELECT(24,12), //typeinfo_var
+  NSPAIRA(_ZTV9S591C3_nt),110, //virtual function table var
+  2, // offset into main vftv pointed to by object[0]
+  {0,0},0, // virtual table table var
+  2, // n_initialized_bases
+  0, // has_virtual_bases
+  1, // has_class_type_fields
+  0, // alt-thunk-names
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S591C2_nt  : S591C3_nt {
+  void *s591c2f0[2];
+  int s591c2f1[4];
+  unsigned int s591c2f2:1;
+  unsigned int s591c2f3:1;
+  unsigned int s591c2f4:1;
+  char s591c2f5;
+  int s591c2f6;
+  unsigned int s591c2f7:1;
+  ::S485C8_nt s591c2f8;
+  virtual  ~S591C2_nt(); // _ZN9S591C2_ntD1Ev
+  virtual void  v110(); // _ZN9S591C2_nt4v110Ev
+  virtual void  v111(); // _ZN9S591C2_nt4v111Ev
+  virtual void  v112(); // _ZN9S591C2_nt4v112Ev
+  virtual void  v113(); // _ZN9S591C2_nt4v113Ev
+  virtual void  v114(); // _ZN9S591C2_nt4v114Ev
+  virtual void  v115(); // _ZN9S591C2_nt4v115Ev
+  virtual void  v116(); // _ZN9S591C2_nt4v116Ev
+  virtual void  v117(); // _ZN9S591C2_nt4v117Ev
+  virtual void  v118(); // _ZN9S591C2_nt4v118Ev
+  virtual void  v119(); // _ZN9S591C2_nt4v119Ev
+  virtual void  v120(); // _ZN9S591C2_nt4v120Ev
+  virtual void  v121(); // _ZN9S591C2_nt4v121Ev
+  virtual void  v122(); // _ZN9S591C2_nt4v122Ev
+  virtual void  v123(); // _ZN9S591C2_nt4v123Ev
+  S591C2_nt(); // tgen
+};
+//SIG(-1 S591C2_nt) C1{ BC2{ BC3{ BC4{ vd v15 v16 v17 v18 v19 v20 v21 v22 v23 v24 v25 v26 v27 v28 v29 v30 v31 v32 v33 v34 v35 v36 v37 v38 v39 v40 v41 v42 v43 v44 v45 v46 v47 v48 v49 v50 v51 v52 v53 v54 v55 v56 v57 v58 v59 v60 v61 v62 v63 v64 v65 v66 v67 v68 v69 v70 v71 v72 v73 v74 v75 v76 v77 v78 Fi FL Fp[4] Fi[2] Fp FC5{ m Fi[2]} Fp[2]} vd v79 v80 v81 v82 v83 v84 v85 v86 v87 v88 v89 v90 v91 v92 v93 v94 v95 v96 v97 v98 v99 v100 Fi[2] Fp Fi[2] FC6{ BC7{ BC8{ BC9{ m Fp Fi[2]}}}} FC6 FC10{ m} FC6 Fi:1 Fi:1 Fi:1 Fi:1 Fi:1 Fi[2]} vd v101 v102 v103 v104 v105 v106 v107 v108 v109 v110 v111 v112 v113 v114 v115 v116 v117 v118 v119 v120 Fi:1 Fi:1 Fi:1 FC11{ BC12{ BC9}} FC7 FC13{ BC14{ BC9}} FC15{ BC16{ BC9}} Fi[3]} vd v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 v13 v14 Fp[2] Fi[4] Fi:1 Fi:1 Fi:1 Fc Fi Fi:1 FC17{ BC18{ BC9}}}
+
+
+ S591C2_nt ::~S591C2_nt(){ note_dtor("S591C2_nt", this);}
+void  S591C2_nt ::v110(){vfunc_called(this, "_ZN9S591C2_nt4v110Ev");}
+void  S591C2_nt ::v111(){vfunc_called(this, "_ZN9S591C2_nt4v111Ev");}
+void  S591C2_nt ::v112(){vfunc_called(this, "_ZN9S591C2_nt4v112Ev");}
+void  S591C2_nt ::v113(){vfunc_called(this, "_ZN9S591C2_nt4v113Ev");}
+void  S591C2_nt ::v114(){vfunc_called(this, "_ZN9S591C2_nt4v114Ev");}
+void  S591C2_nt ::v115(){vfunc_called(this, "_ZN9S591C2_nt4v115Ev");}
+void  S591C2_nt ::v116(){vfunc_called(this, "_ZN9S591C2_nt4v116Ev");}
+void  S591C2_nt ::v117(){vfunc_called(this, "_ZN9S591C2_nt4v117Ev");}
+void  S591C2_nt ::v118(){vfunc_called(this, "_ZN9S591C2_nt4v118Ev");}
+void  S591C2_nt ::v119(){vfunc_called(this, "_ZN9S591C2_nt4v119Ev");}
+void  S591C2_nt ::v120(){vfunc_called(this, "_ZN9S591C2_nt4v120Ev");}
+void  S591C2_nt ::v121(){vfunc_called(this, "_ZN9S591C2_nt4v121Ev");}
+void  S591C2_nt ::v122(){vfunc_called(this, "_ZN9S591C2_nt4v122Ev");}
+void  S591C2_nt ::v123(){vfunc_called(this, "_ZN9S591C2_nt4v123Ev");}
+S591C2_nt ::S591C2_nt(){ note_ctor("S591C2_nt", this);} // tgen
+
+//skip512 S591C2_nt
+
+#else // __cplusplus
+
+extern void _ZN9S591C2_ntC1Ev();
+extern void _ZN9S591C2_ntD1Ev();
+Name_Map name_map_S591C2_nt[] = {
+  NSPAIR(_ZN9S591C2_ntC1Ev),
+  NSPAIR(_ZN9S591C2_ntD1Ev),
+  {0,0}
+};
+extern Class_Descriptor cd_S591C5;
+extern VTBL_ENTRY _ZTI6S591C5[];
+extern  VTBL_ENTRY _ZTV6S591C5[];
+extern Class_Descriptor cd_S591C4_nt;
+extern VTBL_ENTRY _ZTI9S591C4_nt[];
+extern  VTBL_ENTRY _ZTV9S591C4_nt[];
+extern Class_Descriptor cd_S591C3_nt;
+extern VTBL_ENTRY _ZTI9S591C3_nt[];
+extern  VTBL_ENTRY _ZTV9S591C3_nt[];
+static Base_Class bases_S591C2_nt[] = {
+  // ofst, vfto, nneg, vtt_idx, base_vtt_idx, init_seq, direct, virtual
+  {&cd_S591C5,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    1, //init_seq
+    1, //immediately_derived
+  0, 0},
+  {&cd_S591C4_nt,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    2, //init_seq
+    2, //immediately_derived
+  0, 0},
+  {&cd_S591C3_nt,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    3, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {0}};
+extern VTBL_ENTRY _ZTI9S591C2_nt[];
+extern void _ZN9S591C2_ntD1Ev();
+extern void _ZN9S591C2_ntD0Ev();
+extern void _ZN6S591C52v4Ev();
+extern void _ZN6S591C52v5Ev();
+extern void _ZN6S591C52v6Ev();
+extern void _ZN6S591C52v7Ev();
+extern void _ZN6S591C52v8Ev();
+extern void _ZN6S591C52v9Ev();
+extern void _ZN6S591C53v10Ev();
+extern void _ZN6S591C53v11Ev();
+extern void _ZN6S591C53v12Ev();
+extern void _ZN6S591C53v13Ev();
+extern void _ZN6S591C53v14Ev();
+extern void _ZN6S591C53v15Ev();
+extern void _ZN6S591C53v16Ev();
+extern void _ZN6S591C53v17Ev();
+extern void _ZN6S591C53v18Ev();
+extern void _ZN6S591C53v19Ev();
+extern void _ZN6S591C53v20Ev();
+extern void _ZN6S591C53v21Ev();
+extern void _ZN6S591C53v22Ev();
+extern void _ZN6S591C53v23Ev();
+extern void _ZN6S591C53v24Ev();
+extern void _ZN6S591C53v25Ev();
+extern void _ZN6S591C53v26Ev();
+extern void _ZN6S591C53v27Ev();
+extern void _ZN6S591C53v28Ev();
+extern void _ZN6S591C53v29Ev();
+extern void _ZN6S591C53v30Ev();
+extern void _ZN6S591C53v31Ev();
+extern void _ZN6S591C53v32Ev();
+extern void _ZN6S591C53v33Ev();
+extern void _ZN6S591C53v34Ev();
+extern void _ZN6S591C53v35Ev();
+extern void _ZN6S591C53v36Ev();
+extern void _ZN6S591C53v37Ev();
+extern void _ZN6S591C53v38Ev();
+extern void _ZN6S591C53v39Ev();
+extern void _ZN6S591C53v40Ev();
+extern void _ZN6S591C53v41Ev();
+extern void _ZN6S591C53v42Ev();
+extern void _ZN6S591C53v43Ev();
+extern void _ZN6S591C53v44Ev();
+extern void _ZN6S591C53v45Ev();
+extern void _ZN6S591C53v46Ev();
+extern void _ZN6S591C53v47Ev();
+extern void _ZN6S591C53v48Ev();
+extern void _ZN6S591C53v49Ev();
+extern void _ZN6S591C53v50Ev();
+extern void _ZN6S591C53v51Ev();
+extern void _ZN6S591C53v52Ev();
+extern void _ZN6S591C53v53Ev();
+extern void _ZN6S591C53v54Ev();
+extern void _ZN6S591C53v55Ev();
+extern void _ZN6S591C53v56Ev();
+extern void _ZN6S591C53v57Ev();
+extern void _ZN6S591C53v58Ev();
+extern void _ZN6S591C53v59Ev();
+extern void _ZN6S591C53v60Ev();
+extern void _ZN6S591C53v61Ev();
+extern void _ZN6S591C53v62Ev();
+extern void _ZN6S591C53v63Ev();
+extern void _ZN6S591C53v64Ev();
+extern void _ZN6S591C53v65Ev();
+extern void _ZN6S591C53v66Ev();
+extern void _ZN6S591C53v67Ev();
+extern void _ZN9S591C4_nt3v68Ev();
+extern void _ZN9S591C4_nt3v69Ev();
+extern void _ZN9S591C4_nt3v70Ev();
+extern void _ZN9S591C4_nt3v71Ev();
+extern void _ZN9S591C4_nt3v72Ev();
+extern void _ZN9S591C4_nt3v73Ev();
+extern void _ZN9S591C4_nt3v74Ev();
+extern void _ZN9S591C4_nt3v75Ev();
+extern void _ZN9S591C4_nt3v76Ev();
+extern void _ZN9S591C4_nt3v77Ev();
+extern void _ZN9S591C4_nt3v78Ev();
+extern void _ZN9S591C4_nt3v79Ev();
+extern void _ZN9S591C4_nt3v80Ev();
+extern void _ZN9S591C4_nt3v81Ev();
+extern void _ZN9S591C4_nt3v82Ev();
+extern void _ZN9S591C4_nt3v83Ev();
+extern void _ZN9S591C4_nt3v84Ev();
+extern void _ZN9S591C4_nt3v85Ev();
+extern void _ZN9S591C4_nt3v86Ev();
+extern void _ZN9S591C4_nt3v87Ev();
+extern void _ZN9S591C4_nt3v88Ev();
+extern void _ZN9S591C4_nt3v89Ev();
+extern void _ZN9S591C3_nt3v90Ev();
+extern void _ZN9S591C3_nt3v91Ev();
+extern void _ZN9S591C3_nt3v92Ev();
+extern void _ZN9S591C3_nt3v93Ev();
+extern void _ZN9S591C3_nt3v94Ev();
+extern void _ZN9S591C3_nt3v95Ev();
+extern void _ZN9S591C3_nt3v96Ev();
+extern void _ZN9S591C3_nt3v97Ev();
+extern void _ZN9S591C3_nt3v98Ev();
+extern void _ZN9S591C3_nt3v99Ev();
+extern void _ZN9S591C3_nt4v100Ev();
+extern void _ZN9S591C3_nt4v101Ev();
+extern void _ZN9S591C3_nt4v102Ev();
+extern void _ZN9S591C3_nt4v103Ev();
+extern void _ZN9S591C3_nt4v104Ev();
+extern void _ZN9S591C3_nt4v105Ev();
+extern void _ZN9S591C3_nt4v106Ev();
+extern void _ZN9S591C3_nt4v107Ev();
+extern void _ZN9S591C3_nt4v108Ev();
+extern void _ZN9S591C3_nt4v109Ev();
+extern void _ZN9S591C2_nt4v110Ev();
+extern void _ZN9S591C2_nt4v111Ev();
+extern void _ZN9S591C2_nt4v112Ev();
+extern void _ZN9S591C2_nt4v113Ev();
+extern void _ZN9S591C2_nt4v114Ev();
+extern void _ZN9S591C2_nt4v115Ev();
+extern void _ZN9S591C2_nt4v116Ev();
+extern void _ZN9S591C2_nt4v117Ev();
+extern void _ZN9S591C2_nt4v118Ev();
+extern void _ZN9S591C2_nt4v119Ev();
+extern void _ZN9S591C2_nt4v120Ev();
+extern void _ZN9S591C2_nt4v121Ev();
+extern void _ZN9S591C2_nt4v122Ev();
+extern void _ZN9S591C2_nt4v123Ev();
+static  VTBL_ENTRY vtc_S591C2_nt[] = {
+  0,
+  (VTBL_ENTRY)&(_ZTI9S591C2_nt[0]),
+  (VTBL_ENTRY)&_ZN9S591C2_ntD1Ev,
+  (VTBL_ENTRY)&_ZN9S591C2_ntD0Ev,
+  (VTBL_ENTRY)&_ZN6S591C52v4Ev,
+  (VTBL_ENTRY)&_ZN6S591C52v5Ev,
+  (VTBL_ENTRY)&_ZN6S591C52v6Ev,
+  (VTBL_ENTRY)&_ZN6S591C52v7Ev,
+  (VTBL_ENTRY)&_ZN6S591C52v8Ev,
+  (VTBL_ENTRY)&_ZN6S591C52v9Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v10Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v11Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v12Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v13Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v14Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v15Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v16Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v17Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v18Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v19Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v20Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v21Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v22Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v23Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v24Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v25Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v26Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v27Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v28Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v29Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v30Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v31Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v32Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v33Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v34Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v35Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v36Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v37Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v38Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v39Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v40Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v41Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v42Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v43Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v44Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v45Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v46Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v47Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v48Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v49Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v50Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v51Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v52Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v53Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v54Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v55Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v56Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v57Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v58Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v59Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v60Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v61Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v62Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v63Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v64Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v65Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v66Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v67Ev,
+  (VTBL_ENTRY)&_ZN9S591C4_nt3v68Ev,
+  (VTBL_ENTRY)&_ZN9S591C4_nt3v69Ev,
+  (VTBL_ENTRY)&_ZN9S591C4_nt3v70Ev,
+  (VTBL_ENTRY)&_ZN9S591C4_nt3v71Ev,
+  (VTBL_ENTRY)&_ZN9S591C4_nt3v72Ev,
+  (VTBL_ENTRY)&_ZN9S591C4_nt3v73Ev,
+  (VTBL_ENTRY)&_ZN9S591C4_nt3v74Ev,
+  (VTBL_ENTRY)&_ZN9S591C4_nt3v75Ev,
+  (VTBL_ENTRY)&_ZN9S591C4_nt3v76Ev,
+  (VTBL_ENTRY)&_ZN9S591C4_nt3v77Ev,
+  (VTBL_ENTRY)&_ZN9S591C4_nt3v78Ev,
+  (VTBL_ENTRY)&_ZN9S591C4_nt3v79Ev,
+  (VTBL_ENTRY)&_ZN9S591C4_nt3v80Ev,
+  (VTBL_ENTRY)&_ZN9S591C4_nt3v81Ev,
+  (VTBL_ENTRY)&_ZN9S591C4_nt3v82Ev,
+  (VTBL_ENTRY)&_ZN9S591C4_nt3v83Ev,
+  (VTBL_ENTRY)&_ZN9S591C4_nt3v84Ev,
+  (VTBL_ENTRY)&_ZN9S591C4_nt3v85Ev,
+  (VTBL_ENTRY)&_ZN9S591C4_nt3v86Ev,
+  (VTBL_ENTRY)&_ZN9S591C4_nt3v87Ev,
+  (VTBL_ENTRY)&_ZN9S591C4_nt3v88Ev,
+  (VTBL_ENTRY)&_ZN9S591C4_nt3v89Ev,
+  (VTBL_ENTRY)&_ZN9S591C3_nt3v90Ev,
+  (VTBL_ENTRY)&_ZN9S591C3_nt3v91Ev,
+  (VTBL_ENTRY)&_ZN9S591C3_nt3v92Ev,
+  (VTBL_ENTRY)&_ZN9S591C3_nt3v93Ev,
+  (VTBL_ENTRY)&_ZN9S591C3_nt3v94Ev,
+  (VTBL_ENTRY)&_ZN9S591C3_nt3v95Ev,
+  (VTBL_ENTRY)&_ZN9S591C3_nt3v96Ev,
+  (VTBL_ENTRY)&_ZN9S591C3_nt3v97Ev,
+  (VTBL_ENTRY)&_ZN9S591C3_nt3v98Ev,
+  (VTBL_ENTRY)&_ZN9S591C3_nt3v99Ev,
+  (VTBL_ENTRY)&_ZN9S591C3_nt4v100Ev,
+  (VTBL_ENTRY)&_ZN9S591C3_nt4v101Ev,
+  (VTBL_ENTRY)&_ZN9S591C3_nt4v102Ev,
+  (VTBL_ENTRY)&_ZN9S591C3_nt4v103Ev,
+  (VTBL_ENTRY)&_ZN9S591C3_nt4v104Ev,
+  (VTBL_ENTRY)&_ZN9S591C3_nt4v105Ev,
+  (VTBL_ENTRY)&_ZN9S591C3_nt4v106Ev,
+  (VTBL_ENTRY)&_ZN9S591C3_nt4v107Ev,
+  (VTBL_ENTRY)&_ZN9S591C3_nt4v108Ev,
+  (VTBL_ENTRY)&_ZN9S591C3_nt4v109Ev,
+  (VTBL_ENTRY)&_ZN9S591C2_nt4v110Ev,
+  (VTBL_ENTRY)&_ZN9S591C2_nt4v111Ev,
+  (VTBL_ENTRY)&_ZN9S591C2_nt4v112Ev,
+  (VTBL_ENTRY)&_ZN9S591C2_nt4v113Ev,
+  (VTBL_ENTRY)&_ZN9S591C2_nt4v114Ev,
+  (VTBL_ENTRY)&_ZN9S591C2_nt4v115Ev,
+  (VTBL_ENTRY)&_ZN9S591C2_nt4v116Ev,
+  (VTBL_ENTRY)&_ZN9S591C2_nt4v117Ev,
+  (VTBL_ENTRY)&_ZN9S591C2_nt4v118Ev,
+  (VTBL_ENTRY)&_ZN9S591C2_nt4v119Ev,
+  (VTBL_ENTRY)&_ZN9S591C2_nt4v120Ev,
+  (VTBL_ENTRY)&_ZN9S591C2_nt4v121Ev,
+  (VTBL_ENTRY)&_ZN9S591C2_nt4v122Ev,
+  (VTBL_ENTRY)&_ZN9S591C2_nt4v123Ev,
+};
+extern VTBL_ENTRY _ZTI9S591C2_nt[];
+VTBL_ENTRY *P__ZTI9S591C2_nt = _ZTI9S591C2_nt; 
+extern  VTBL_ENTRY _ZTV9S591C2_nt[];
+Class_Descriptor cd_S591C2_nt = {  "S591C2_nt", // class name
+  bases_S591C2_nt, 3,
+  &(vtc_S591C2_nt[0]), // expected_vtbl_contents
+  0, //no vtt
+  ABISELECT(336,244), // object size
+  NSPAIRA(_ZTI9S591C2_nt),ABISELECT(24,12), //typeinfo_var
+  NSPAIRA(_ZTV9S591C2_nt),124, //virtual function table var
+  2, // offset into main vftv pointed to by object[0]
+  {0,0},0, // virtual table table var
+  3, // n_initialized_bases
+  0, // has_virtual_bases
+  1, // has_class_type_fields
+  0, // alt-thunk-names
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S591C1  : S591C2_nt {
+  int s591c1f0;
+  virtual  ~S591C1(); // _ZN6S591C1D1Ev
+  virtual void  v1(); // _ZN6S591C12v1Ev
+  virtual void  v2(); // _ZN6S591C12v2Ev
+  virtual void  v3(); // _ZN6S591C12v3Ev
+  S591C1(); // tgen
+};
+//SIG(1 S591C1) C1{ BC2{ BC3{ BC4{ BC5{ vd v4 v5 v6 v7 v8 v9 v10 v11 v12 v13 v14 v15 v16 v17 v18 v19 v20 v21 v22 v23 v24 v25 v26 v27 v28 v29 v30 v31 v32 v33 v34 v35 v36 v37 v38 v39 v40 v41 v42 v43 v44 v45 v46 v47 v48 v49 v50 v51 v52 v53 v54 v55 v56 v57 v58 v59 v60 v61 v62 v63 v64 v65 v66 v67 Fi FL Fp[4] Fi[2] Fp FC6{ m Fi[2]} Fp[2]} vd v68 v69 v70 v71 v72 v73 v74 v75 v76 v77 v78 v79 v80 v81 v82 v83 v84 v85 v86 v87 v88 v89 Fi[2] Fp Fi[2] FC7{ BC8{ BC9{ BC10{ m Fp Fi[2]}}}} FC7 FC11{ m} FC7 Fi:1 Fi:1 Fi:1 Fi:1 Fi:1 Fi[2]} vd v90 v91 v92 v93 v94 v95 v96 v97 v98 v99 v100 v101 v102 v103 v104 v105 v106 v107 v108 v109 Fi:1 Fi:1 Fi:1 FC12{ BC13{ BC10}} FC8 FC14{ BC15{ BC10}} FC16{ BC17{ BC10}} Fi[3]} vd v110 v111 v112 v113 v114 v115 v116 v117 v118 v119 v120 v121 v122 v123 Fp[2] Fi[4] Fi:1 Fi:1 Fi:1 Fc Fi Fi:1 FC18{ BC19{ BC10}}} vd v1 v2 v3 Fi}
+
+
+ S591C1 ::~S591C1(){ note_dtor("S591C1", this);}
+void  S591C1 ::v1(){vfunc_called(this, "_ZN6S591C12v1Ev");}
+void  S591C1 ::v2(){vfunc_called(this, "_ZN6S591C12v2Ev");}
+void  S591C1 ::v3(){vfunc_called(this, "_ZN6S591C12v3Ev");}
+S591C1 ::S591C1(){ note_ctor("S591C1", this);} // tgen
+
+static void Test_S591C1()
+{
+  extern Class_Descriptor cd_S591C1;
+  void *lvp;
+  {
+    ABISELECT(double,int) buf[ABISELECT(44,63)];
+    init_test(&cd_S591C1, buf);
+    S591C1 *dp, &lv = *(dp=new (buf) S591C1());
+    lvp = (void*)&lv;
+    check2(sizeof(lv), ABISELECT(344,248), "sizeof(S591C1)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S591C1)");
+    check_base_class_offset(lv, (S591C5*)(S591C4_nt*)(S591C3_nt*)(S591C2_nt*), 0, "S591C1");
+    check_base_class_offset(lv, (S591C4_nt*)(S591C3_nt*)(S591C2_nt*), 0, "S591C1");
+    check_base_class_offset(lv, (S591C3_nt*)(S591C2_nt*), 0, "S591C1");
+    check_base_class_offset(lv, (S591C2_nt*), 0, "S591C1");
+    check_field_offset(lv, s591c1f0, ABISELECT(336,244), "S591C1.s591c1f0");
+    test_class_info(&lv, &cd_S591C1);
+    dp->~S591C1();
+  }
+  Check_Ctor_Dtor_Calls(lvp);
+}
+static Arrange_To_Call_Me vS591C1(Test_S591C1, "S591C1", ABISELECT(344,248));
+
+#else // __cplusplus
+
+extern void _ZN6S591C1C1Ev();
+extern void _ZN6S591C1D1Ev();
+Name_Map name_map_S591C1[] = {
+  NSPAIR(_ZN6S591C1C1Ev),
+  NSPAIR(_ZN6S591C1D1Ev),
+  {0,0}
+};
+extern Class_Descriptor cd_S591C5;
+extern VTBL_ENTRY _ZTI6S591C5[];
+extern  VTBL_ENTRY _ZTV6S591C5[];
+extern Class_Descriptor cd_S591C4_nt;
+extern VTBL_ENTRY _ZTI9S591C4_nt[];
+extern  VTBL_ENTRY _ZTV9S591C4_nt[];
+extern Class_Descriptor cd_S591C3_nt;
+extern VTBL_ENTRY _ZTI9S591C3_nt[];
+extern  VTBL_ENTRY _ZTV9S591C3_nt[];
+extern Class_Descriptor cd_S591C2_nt;
+extern VTBL_ENTRY _ZTI9S591C2_nt[];
+extern  VTBL_ENTRY _ZTV9S591C2_nt[];
+static Base_Class bases_S591C1[] = {
+  // ofst, vfto, nneg, vtt_idx, base_vtt_idx, init_seq, direct, virtual
+  {&cd_S591C5,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    1, //init_seq
+    1, //immediately_derived
+  0, 0},
+  {&cd_S591C4_nt,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    2, //init_seq
+    2, //immediately_derived
+  0, 0},
+  {&cd_S591C3_nt,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    3, //init_seq
+    3, //immediately_derived
+  0, 0},
+  {&cd_S591C2_nt,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    4, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {0}};
+extern VTBL_ENTRY _ZTI6S591C1[];
+extern void _ZN6S591C1D1Ev();
+extern void _ZN6S591C1D0Ev();
+extern void _ZN6S591C52v4Ev();
+extern void _ZN6S591C52v5Ev();
+extern void _ZN6S591C52v6Ev();
+extern void _ZN6S591C52v7Ev();
+extern void _ZN6S591C52v8Ev();
+extern void _ZN6S591C52v9Ev();
+extern void _ZN6S591C53v10Ev();
+extern void _ZN6S591C53v11Ev();
+extern void _ZN6S591C53v12Ev();
+extern void _ZN6S591C53v13Ev();
+extern void _ZN6S591C53v14Ev();
+extern void _ZN6S591C53v15Ev();
+extern void _ZN6S591C53v16Ev();
+extern void _ZN6S591C53v17Ev();
+extern void _ZN6S591C53v18Ev();
+extern void _ZN6S591C53v19Ev();
+extern void _ZN6S591C53v20Ev();
+extern void _ZN6S591C53v21Ev();
+extern void _ZN6S591C53v22Ev();
+extern void _ZN6S591C53v23Ev();
+extern void _ZN6S591C53v24Ev();
+extern void _ZN6S591C53v25Ev();
+extern void _ZN6S591C53v26Ev();
+extern void _ZN6S591C53v27Ev();
+extern void _ZN6S591C53v28Ev();
+extern void _ZN6S591C53v29Ev();
+extern void _ZN6S591C53v30Ev();
+extern void _ZN6S591C53v31Ev();
+extern void _ZN6S591C53v32Ev();
+extern void _ZN6S591C53v33Ev();
+extern void _ZN6S591C53v34Ev();
+extern void _ZN6S591C53v35Ev();
+extern void _ZN6S591C53v36Ev();
+extern void _ZN6S591C53v37Ev();
+extern void _ZN6S591C53v38Ev();
+extern void _ZN6S591C53v39Ev();
+extern void _ZN6S591C53v40Ev();
+extern void _ZN6S591C53v41Ev();
+extern void _ZN6S591C53v42Ev();
+extern void _ZN6S591C53v43Ev();
+extern void _ZN6S591C53v44Ev();
+extern void _ZN6S591C53v45Ev();
+extern void _ZN6S591C53v46Ev();
+extern void _ZN6S591C53v47Ev();
+extern void _ZN6S591C53v48Ev();
+extern void _ZN6S591C53v49Ev();
+extern void _ZN6S591C53v50Ev();
+extern void _ZN6S591C53v51Ev();
+extern void _ZN6S591C53v52Ev();
+extern void _ZN6S591C53v53Ev();
+extern void _ZN6S591C53v54Ev();
+extern void _ZN6S591C53v55Ev();
+extern void _ZN6S591C53v56Ev();
+extern void _ZN6S591C53v57Ev();
+extern void _ZN6S591C53v58Ev();
+extern void _ZN6S591C53v59Ev();
+extern void _ZN6S591C53v60Ev();
+extern void _ZN6S591C53v61Ev();
+extern void _ZN6S591C53v62Ev();
+extern void _ZN6S591C53v63Ev();
+extern void _ZN6S591C53v64Ev();
+extern void _ZN6S591C53v65Ev();
+extern void _ZN6S591C53v66Ev();
+extern void _ZN6S591C53v67Ev();
+extern void _ZN9S591C4_nt3v68Ev();
+extern void _ZN9S591C4_nt3v69Ev();
+extern void _ZN9S591C4_nt3v70Ev();
+extern void _ZN9S591C4_nt3v71Ev();
+extern void _ZN9S591C4_nt3v72Ev();
+extern void _ZN9S591C4_nt3v73Ev();
+extern void _ZN9S591C4_nt3v74Ev();
+extern void _ZN9S591C4_nt3v75Ev();
+extern void _ZN9S591C4_nt3v76Ev();
+extern void _ZN9S591C4_nt3v77Ev();
+extern void _ZN9S591C4_nt3v78Ev();
+extern void _ZN9S591C4_nt3v79Ev();
+extern void _ZN9S591C4_nt3v80Ev();
+extern void _ZN9S591C4_nt3v81Ev();
+extern void _ZN9S591C4_nt3v82Ev();
+extern void _ZN9S591C4_nt3v83Ev();
+extern void _ZN9S591C4_nt3v84Ev();
+extern void _ZN9S591C4_nt3v85Ev();
+extern void _ZN9S591C4_nt3v86Ev();
+extern void _ZN9S591C4_nt3v87Ev();
+extern void _ZN9S591C4_nt3v88Ev();
+extern void _ZN9S591C4_nt3v89Ev();
+extern void _ZN9S591C3_nt3v90Ev();
+extern void _ZN9S591C3_nt3v91Ev();
+extern void _ZN9S591C3_nt3v92Ev();
+extern void _ZN9S591C3_nt3v93Ev();
+extern void _ZN9S591C3_nt3v94Ev();
+extern void _ZN9S591C3_nt3v95Ev();
+extern void _ZN9S591C3_nt3v96Ev();
+extern void _ZN9S591C3_nt3v97Ev();
+extern void _ZN9S591C3_nt3v98Ev();
+extern void _ZN9S591C3_nt3v99Ev();
+extern void _ZN9S591C3_nt4v100Ev();
+extern void _ZN9S591C3_nt4v101Ev();
+extern void _ZN9S591C3_nt4v102Ev();
+extern void _ZN9S591C3_nt4v103Ev();
+extern void _ZN9S591C3_nt4v104Ev();
+extern void _ZN9S591C3_nt4v105Ev();
+extern void _ZN9S591C3_nt4v106Ev();
+extern void _ZN9S591C3_nt4v107Ev();
+extern void _ZN9S591C3_nt4v108Ev();
+extern void _ZN9S591C3_nt4v109Ev();
+extern void _ZN9S591C2_nt4v110Ev();
+extern void _ZN9S591C2_nt4v111Ev();
+extern void _ZN9S591C2_nt4v112Ev();
+extern void _ZN9S591C2_nt4v113Ev();
+extern void _ZN9S591C2_nt4v114Ev();
+extern void _ZN9S591C2_nt4v115Ev();
+extern void _ZN9S591C2_nt4v116Ev();
+extern void _ZN9S591C2_nt4v117Ev();
+extern void _ZN9S591C2_nt4v118Ev();
+extern void _ZN9S591C2_nt4v119Ev();
+extern void _ZN9S591C2_nt4v120Ev();
+extern void _ZN9S591C2_nt4v121Ev();
+extern void _ZN9S591C2_nt4v122Ev();
+extern void _ZN9S591C2_nt4v123Ev();
+extern void _ZN6S591C12v1Ev();
+extern void _ZN6S591C12v2Ev();
+extern void _ZN6S591C12v3Ev();
+static  VTBL_ENTRY vtc_S591C1[] = {
+  0,
+  (VTBL_ENTRY)&(_ZTI6S591C1[0]),
+  (VTBL_ENTRY)&_ZN6S591C1D1Ev,
+  (VTBL_ENTRY)&_ZN6S591C1D0Ev,
+  (VTBL_ENTRY)&_ZN6S591C52v4Ev,
+  (VTBL_ENTRY)&_ZN6S591C52v5Ev,
+  (VTBL_ENTRY)&_ZN6S591C52v6Ev,
+  (VTBL_ENTRY)&_ZN6S591C52v7Ev,
+  (VTBL_ENTRY)&_ZN6S591C52v8Ev,
+  (VTBL_ENTRY)&_ZN6S591C52v9Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v10Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v11Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v12Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v13Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v14Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v15Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v16Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v17Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v18Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v19Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v20Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v21Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v22Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v23Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v24Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v25Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v26Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v27Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v28Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v29Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v30Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v31Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v32Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v33Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v34Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v35Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v36Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v37Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v38Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v39Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v40Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v41Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v42Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v43Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v44Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v45Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v46Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v47Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v48Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v49Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v50Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v51Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v52Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v53Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v54Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v55Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v56Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v57Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v58Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v59Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v60Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v61Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v62Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v63Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v64Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v65Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v66Ev,
+  (VTBL_ENTRY)&_ZN6S591C53v67Ev,
+  (VTBL_ENTRY)&_ZN9S591C4_nt3v68Ev,
+  (VTBL_ENTRY)&_ZN9S591C4_nt3v69Ev,
+  (VTBL_ENTRY)&_ZN9S591C4_nt3v70Ev,
+  (VTBL_ENTRY)&_ZN9S591C4_nt3v71Ev,
+  (VTBL_ENTRY)&_ZN9S591C4_nt3v72Ev,
+  (VTBL_ENTRY)&_ZN9S591C4_nt3v73Ev,
+  (VTBL_ENTRY)&_ZN9S591C4_nt3v74Ev,
+  (VTBL_ENTRY)&_ZN9S591C4_nt3v75Ev,
+  (VTBL_ENTRY)&_ZN9S591C4_nt3v76Ev,
+  (VTBL_ENTRY)&_ZN9S591C4_nt3v77Ev,
+  (VTBL_ENTRY)&_ZN9S591C4_nt3v78Ev,
+  (VTBL_ENTRY)&_ZN9S591C4_nt3v79Ev,
+  (VTBL_ENTRY)&_ZN9S591C4_nt3v80Ev,
+  (VTBL_ENTRY)&_ZN9S591C4_nt3v81Ev,
+  (VTBL_ENTRY)&_ZN9S591C4_nt3v82Ev,
+  (VTBL_ENTRY)&_ZN9S591C4_nt3v83Ev,
+  (VTBL_ENTRY)&_ZN9S591C4_nt3v84Ev,
+  (VTBL_ENTRY)&_ZN9S591C4_nt3v85Ev,
+  (VTBL_ENTRY)&_ZN9S591C4_nt3v86Ev,
+  (VTBL_ENTRY)&_ZN9S591C4_nt3v87Ev,
+  (VTBL_ENTRY)&_ZN9S591C4_nt3v88Ev,
+  (VTBL_ENTRY)&_ZN9S591C4_nt3v89Ev,
+  (VTBL_ENTRY)&_ZN9S591C3_nt3v90Ev,
+  (VTBL_ENTRY)&_ZN9S591C3_nt3v91Ev,
+  (VTBL_ENTRY)&_ZN9S591C3_nt3v92Ev,
+  (VTBL_ENTRY)&_ZN9S591C3_nt3v93Ev,
+  (VTBL_ENTRY)&_ZN9S591C3_nt3v94Ev,
+  (VTBL_ENTRY)&_ZN9S591C3_nt3v95Ev,
+  (VTBL_ENTRY)&_ZN9S591C3_nt3v96Ev,
+  (VTBL_ENTRY)&_ZN9S591C3_nt3v97Ev,
+  (VTBL_ENTRY)&_ZN9S591C3_nt3v98Ev,
+  (VTBL_ENTRY)&_ZN9S591C3_nt3v99Ev,
+  (VTBL_ENTRY)&_ZN9S591C3_nt4v100Ev,
+  (VTBL_ENTRY)&_ZN9S591C3_nt4v101Ev,
+  (VTBL_ENTRY)&_ZN9S591C3_nt4v102Ev,
+  (VTBL_ENTRY)&_ZN9S591C3_nt4v103Ev,
+  (VTBL_ENTRY)&_ZN9S591C3_nt4v104Ev,
+  (VTBL_ENTRY)&_ZN9S591C3_nt4v105Ev,
+  (VTBL_ENTRY)&_ZN9S591C3_nt4v106Ev,
+  (VTBL_ENTRY)&_ZN9S591C3_nt4v107Ev,
+  (VTBL_ENTRY)&_ZN9S591C3_nt4v108Ev,
+  (VTBL_ENTRY)&_ZN9S591C3_nt4v109Ev,
+  (VTBL_ENTRY)&_ZN9S591C2_nt4v110Ev,
+  (VTBL_ENTRY)&_ZN9S591C2_nt4v111Ev,
+  (VTBL_ENTRY)&_ZN9S591C2_nt4v112Ev,
+  (VTBL_ENTRY)&_ZN9S591C2_nt4v113Ev,
+  (VTBL_ENTRY)&_ZN9S591C2_nt4v114Ev,
+  (VTBL_ENTRY)&_ZN9S591C2_nt4v115Ev,
+  (VTBL_ENTRY)&_ZN9S591C2_nt4v116Ev,
+  (VTBL_ENTRY)&_ZN9S591C2_nt4v117Ev,
+  (VTBL_ENTRY)&_ZN9S591C2_nt4v118Ev,
+  (VTBL_ENTRY)&_ZN9S591C2_nt4v119Ev,
+  (VTBL_ENTRY)&_ZN9S591C2_nt4v120Ev,
+  (VTBL_ENTRY)&_ZN9S591C2_nt4v121Ev,
+  (VTBL_ENTRY)&_ZN9S591C2_nt4v122Ev,
+  (VTBL_ENTRY)&_ZN9S591C2_nt4v123Ev,
+  (VTBL_ENTRY)&_ZN6S591C12v1Ev,
+  (VTBL_ENTRY)&_ZN6S591C12v2Ev,
+  (VTBL_ENTRY)&_ZN6S591C12v3Ev,
+};
+extern VTBL_ENTRY _ZTI6S591C1[];
+extern  VTBL_ENTRY _ZTV6S591C1[];
+Class_Descriptor cd_S591C1 = {  "S591C1", // class name
+  bases_S591C1, 4,
+  &(vtc_S591C1[0]), // expected_vtbl_contents
+  0, //no vtt
+  ABISELECT(344,248), // object size
+  NSPAIRA(_ZTI6S591C1),ABISELECT(24,12), //typeinfo_var
+  NSPAIRA(_ZTV6S591C1),127, //virtual function table var
+  2, // offset into main vftv pointed to by object[0]
+  {0,0},0, // virtual table table var
+  4, // n_initialized_bases
+  0, // has_virtual_bases
+  1, // has_class_type_fields
+  0, // alt-thunk-names
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S6645C2_nt  {
+  virtual  ~S6645C2_nt(); // _ZN10S6645C2_ntD1Ev
+  virtual void  v28(); // _ZN10S6645C2_nt3v28Ev
+  virtual void  v29(); // _ZN10S6645C2_nt3v29Ev
+  virtual void  v30(); // _ZN10S6645C2_nt3v30Ev
+  virtual void  v31(); // _ZN10S6645C2_nt3v31Ev
+  virtual void  v32(); // _ZN10S6645C2_nt3v32Ev
+  virtual void  v33(); // _ZN10S6645C2_nt3v33Ev
+  virtual void  v34(); // _ZN10S6645C2_nt3v34Ev
+  virtual void  v35(); // _ZN10S6645C2_nt3v35Ev
+  virtual void  v36(); // _ZN10S6645C2_nt3v36Ev
+  virtual void  v37(); // _ZN10S6645C2_nt3v37Ev
+  virtual void  v38(); // _ZN10S6645C2_nt3v38Ev
+  virtual void  v39(); // _ZN10S6645C2_nt3v39Ev
+  virtual void  v40(); // _ZN10S6645C2_nt3v40Ev
+  virtual void  v41(); // _ZN10S6645C2_nt3v41Ev
+  virtual void  v42(); // _ZN10S6645C2_nt3v42Ev
+  virtual void  v43(); // _ZN10S6645C2_nt3v43Ev
+  virtual void  v44(); // _ZN10S6645C2_nt3v44Ev
+  virtual void  v45(); // _ZN10S6645C2_nt3v45Ev
+  virtual void  v46(); // _ZN10S6645C2_nt3v46Ev
+  virtual void  v47(); // _ZN10S6645C2_nt3v47Ev
+  virtual void  v48(); // _ZN10S6645C2_nt3v48Ev
+  virtual void  v49(); // _ZN10S6645C2_nt3v49Ev
+  virtual void  v50(); // _ZN10S6645C2_nt3v50Ev
+  virtual void  v51(); // _ZN10S6645C2_nt3v51Ev
+  virtual void  v52(); // _ZN10S6645C2_nt3v52Ev
+  virtual void  v53(); // _ZN10S6645C2_nt3v53Ev
+  virtual void  v54(); // _ZN10S6645C2_nt3v54Ev
+  S6645C2_nt(); // tgen
+};
+//SIG(-1 S6645C2_nt) C1{ vd v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 v13 v14 v15 v16 v17 v18 v19 v20 v21 v22 v23 v24 v25 v26 v27}
+
+
+ S6645C2_nt ::~S6645C2_nt(){ note_dtor("S6645C2_nt", this);}
+void  S6645C2_nt ::v28(){vfunc_called(this, "_ZN10S6645C2_nt3v28Ev");}
+void  S6645C2_nt ::v29(){vfunc_called(this, "_ZN10S6645C2_nt3v29Ev");}
+void  S6645C2_nt ::v30(){vfunc_called(this, "_ZN10S6645C2_nt3v30Ev");}
+void  S6645C2_nt ::v31(){vfunc_called(this, "_ZN10S6645C2_nt3v31Ev");}
+void  S6645C2_nt ::v32(){vfunc_called(this, "_ZN10S6645C2_nt3v32Ev");}
+void  S6645C2_nt ::v33(){vfunc_called(this, "_ZN10S6645C2_nt3v33Ev");}
+void  S6645C2_nt ::v34(){vfunc_called(this, "_ZN10S6645C2_nt3v34Ev");}
+void  S6645C2_nt ::v35(){vfunc_called(this, "_ZN10S6645C2_nt3v35Ev");}
+void  S6645C2_nt ::v36(){vfunc_called(this, "_ZN10S6645C2_nt3v36Ev");}
+void  S6645C2_nt ::v37(){vfunc_called(this, "_ZN10S6645C2_nt3v37Ev");}
+void  S6645C2_nt ::v38(){vfunc_called(this, "_ZN10S6645C2_nt3v38Ev");}
+void  S6645C2_nt ::v39(){vfunc_called(this, "_ZN10S6645C2_nt3v39Ev");}
+void  S6645C2_nt ::v40(){vfunc_called(this, "_ZN10S6645C2_nt3v40Ev");}
+void  S6645C2_nt ::v41(){vfunc_called(this, "_ZN10S6645C2_nt3v41Ev");}
+void  S6645C2_nt ::v42(){vfunc_called(this, "_ZN10S6645C2_nt3v42Ev");}
+void  S6645C2_nt ::v43(){vfunc_called(this, "_ZN10S6645C2_nt3v43Ev");}
+void  S6645C2_nt ::v44(){vfunc_called(this, "_ZN10S6645C2_nt3v44Ev");}
+void  S6645C2_nt ::v45(){vfunc_called(this, "_ZN10S6645C2_nt3v45Ev");}
+void  S6645C2_nt ::v46(){vfunc_called(this, "_ZN10S6645C2_nt3v46Ev");}
+void  S6645C2_nt ::v47(){vfunc_called(this, "_ZN10S6645C2_nt3v47Ev");}
+void  S6645C2_nt ::v48(){vfunc_called(this, "_ZN10S6645C2_nt3v48Ev");}
+void  S6645C2_nt ::v49(){vfunc_called(this, "_ZN10S6645C2_nt3v49Ev");}
+void  S6645C2_nt ::v50(){vfunc_called(this, "_ZN10S6645C2_nt3v50Ev");}
+void  S6645C2_nt ::v51(){vfunc_called(this, "_ZN10S6645C2_nt3v51Ev");}
+void  S6645C2_nt ::v52(){vfunc_called(this, "_ZN10S6645C2_nt3v52Ev");}
+void  S6645C2_nt ::v53(){vfunc_called(this, "_ZN10S6645C2_nt3v53Ev");}
+void  S6645C2_nt ::v54(){vfunc_called(this, "_ZN10S6645C2_nt3v54Ev");}
+S6645C2_nt ::S6645C2_nt(){ note_ctor("S6645C2_nt", this);} // tgen
+
+//skip512 S6645C2_nt
+
+#else // __cplusplus
+
+extern void _ZN10S6645C2_ntC1Ev();
+extern void _ZN10S6645C2_ntD1Ev();
+Name_Map name_map_S6645C2_nt[] = {
+  NSPAIR(_ZN10S6645C2_ntC1Ev),
+  NSPAIR(_ZN10S6645C2_ntD1Ev),
+  {0,0}
+};
+extern VTBL_ENTRY _ZTI10S6645C2_nt[];
+extern void _ZN10S6645C2_ntD1Ev();
+extern void _ZN10S6645C2_ntD0Ev();
+extern void _ZN10S6645C2_nt3v28Ev();
+extern void _ZN10S6645C2_nt3v29Ev();
+extern void _ZN10S6645C2_nt3v30Ev();
+extern void _ZN10S6645C2_nt3v31Ev();
+extern void _ZN10S6645C2_nt3v32Ev();
+extern void _ZN10S6645C2_nt3v33Ev();
+extern void _ZN10S6645C2_nt3v34Ev();
+extern void _ZN10S6645C2_nt3v35Ev();
+extern void _ZN10S6645C2_nt3v36Ev();
+extern void _ZN10S6645C2_nt3v37Ev();
+extern void _ZN10S6645C2_nt3v38Ev();
+extern void _ZN10S6645C2_nt3v39Ev();
+extern void _ZN10S6645C2_nt3v40Ev();
+extern void _ZN10S6645C2_nt3v41Ev();
+extern void _ZN10S6645C2_nt3v42Ev();
+extern void _ZN10S6645C2_nt3v43Ev();
+extern void _ZN10S6645C2_nt3v44Ev();
+extern void _ZN10S6645C2_nt3v45Ev();
+extern void _ZN10S6645C2_nt3v46Ev();
+extern void _ZN10S6645C2_nt3v47Ev();
+extern void _ZN10S6645C2_nt3v48Ev();
+extern void _ZN10S6645C2_nt3v49Ev();
+extern void _ZN10S6645C2_nt3v50Ev();
+extern void _ZN10S6645C2_nt3v51Ev();
+extern void _ZN10S6645C2_nt3v52Ev();
+extern void _ZN10S6645C2_nt3v53Ev();
+extern void _ZN10S6645C2_nt3v54Ev();
+static  VTBL_ENTRY vtc_S6645C2_nt[] = {
+  0,
+  (VTBL_ENTRY)&(_ZTI10S6645C2_nt[0]),
+  (VTBL_ENTRY)&_ZN10S6645C2_ntD1Ev,
+  (VTBL_ENTRY)&_ZN10S6645C2_ntD0Ev,
+  (VTBL_ENTRY)&_ZN10S6645C2_nt3v28Ev,
+  (VTBL_ENTRY)&_ZN10S6645C2_nt3v29Ev,
+  (VTBL_ENTRY)&_ZN10S6645C2_nt3v30Ev,
+  (VTBL_ENTRY)&_ZN10S6645C2_nt3v31Ev,
+  (VTBL_ENTRY)&_ZN10S6645C2_nt3v32Ev,
+  (VTBL_ENTRY)&_ZN10S6645C2_nt3v33Ev,
+  (VTBL_ENTRY)&_ZN10S6645C2_nt3v34Ev,
+  (VTBL_ENTRY)&_ZN10S6645C2_nt3v35Ev,
+  (VTBL_ENTRY)&_ZN10S6645C2_nt3v36Ev,
+  (VTBL_ENTRY)&_ZN10S6645C2_nt3v37Ev,
+  (VTBL_ENTRY)&_ZN10S6645C2_nt3v38Ev,
+  (VTBL_ENTRY)&_ZN10S6645C2_nt3v39Ev,
+  (VTBL_ENTRY)&_ZN10S6645C2_nt3v40Ev,
+  (VTBL_ENTRY)&_ZN10S6645C2_nt3v41Ev,
+  (VTBL_ENTRY)&_ZN10S6645C2_nt3v42Ev,
+  (VTBL_ENTRY)&_ZN10S6645C2_nt3v43Ev,
+  (VTBL_ENTRY)&_ZN10S6645C2_nt3v44Ev,
+  (VTBL_ENTRY)&_ZN10S6645C2_nt3v45Ev,
+  (VTBL_ENTRY)&_ZN10S6645C2_nt3v46Ev,
+  (VTBL_ENTRY)&_ZN10S6645C2_nt3v47Ev,
+  (VTBL_ENTRY)&_ZN10S6645C2_nt3v48Ev,
+  (VTBL_ENTRY)&_ZN10S6645C2_nt3v49Ev,
+  (VTBL_ENTRY)&_ZN10S6645C2_nt3v50Ev,
+  (VTBL_ENTRY)&_ZN10S6645C2_nt3v51Ev,
+  (VTBL_ENTRY)&_ZN10S6645C2_nt3v52Ev,
+  (VTBL_ENTRY)&_ZN10S6645C2_nt3v53Ev,
+  (VTBL_ENTRY)&_ZN10S6645C2_nt3v54Ev,
+};
+extern VTBL_ENTRY _ZTI10S6645C2_nt[];
+VTBL_ENTRY *P__ZTI10S6645C2_nt = _ZTI10S6645C2_nt; 
+extern  VTBL_ENTRY _ZTV10S6645C2_nt[];
+Class_Descriptor cd_S6645C2_nt = {  "S6645C2_nt", // class name
+  0,0,//no base classes
+  &(vtc_S6645C2_nt[0]), // expected_vtbl_contents
+  0, //no vtt
+  ABISELECT(8,4), // object size
+  NSPAIRA(_ZTI10S6645C2_nt),ABISELECT(16,8), //typeinfo_var
+  NSPAIRA(_ZTV10S6645C2_nt),31, //virtual function table var
+  2, // offset into main vftv pointed to by object[0]
+  {0,0},0, // virtual table table var
+  0, // n_initialized_bases
+  0, // has_virtual_bases
+  0, // has_class_type_fields
+  0, // alt-thunk-names
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S6645C7  {
+  void *s6645c7f0;
+  int s6645c7f1;
+  void *s6645c7f2;
+  int s6645c7f3;
+  void  mf6645c7(); // _ZN7S6645C78mf6645c7Ev
+};
+//SIG(-1 S6645C7) C1{ m Fp Fi Fp Fi}
+
+
+void  S6645C7 ::mf6645c7(){}
+
+static void Test_S6645C7()
+{
+  {
+    init_simple_test("S6645C7");
+    S6645C7 lv;
+    check2(sizeof(lv), ABISELECT(32,16), "sizeof(S6645C7)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S6645C7)");
+    check_field_offset(lv, s6645c7f0, 0, "S6645C7.s6645c7f0");
+    check_field_offset(lv, s6645c7f1, ABISELECT(8,4), "S6645C7.s6645c7f1");
+    check_field_offset(lv, s6645c7f2, ABISELECT(16,8), "S6645C7.s6645c7f2");
+    check_field_offset(lv, s6645c7f3, ABISELECT(24,12), "S6645C7.s6645c7f3");
+  }
+}
+static Arrange_To_Call_Me vS6645C7(Test_S6645C7, "S6645C7", ABISELECT(32,16));
+
+#else // __cplusplus
+
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S6645C4  {
+  ::S6491C23 s6645c4f0;
+  ::S6645C7 s6645c4f1;
+  void  mf6645c4(); // _ZN7S6645C48mf6645c4Ev
+};
+//SIG(-1 S6645C4) C1{ m FC2{ BC3{ m Fp Fi[2]}} FC4{ m Fp Fi Fp Fi}}
+
+
+void  S6645C4 ::mf6645c4(){}
+
+static void Test_S6645C4()
+{
+  {
+    init_simple_test("S6645C4");
+    S6645C4 lv;
+    check2(sizeof(lv), ABISELECT(48,28), "sizeof(S6645C4)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S6645C4)");
+    check_field_offset(lv, s6645c4f0, 0, "S6645C4.s6645c4f0");
+    check_field_offset(lv, s6645c4f1, ABISELECT(16,12), "S6645C4.s6645c4f1");
+  }
+}
+static Arrange_To_Call_Me vS6645C4(Test_S6645C4, "S6645C4", ABISELECT(48,28));
+
+#else // __cplusplus
+
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S6645C11  {
+  ::S6491C10 s6645c11f0;
+  ::S6645C7 s6645c11f1;
+  void  mf6645c11(); // _ZN8S6645C119mf6645c11Ev
+};
+//SIG(-1 S6645C11) C1{ m FC2{ BC3{ m Fp Fi[2]}} FC4{ m Fp Fi Fp Fi}}
+
+
+void  S6645C11 ::mf6645c11(){}
+
+static void Test_S6645C11()
+{
+  {
+    init_simple_test("S6645C11");
+    S6645C11 lv;
+    check2(sizeof(lv), ABISELECT(48,28), "sizeof(S6645C11)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S6645C11)");
+    check_field_offset(lv, s6645c11f0, 0, "S6645C11.s6645c11f0");
+    check_field_offset(lv, s6645c11f1, ABISELECT(16,12), "S6645C11.s6645c11f1");
+  }
+}
+static Arrange_To_Call_Me vS6645C11(Test_S6645C11, "S6645C11", ABISELECT(48,28));
+
+#else // __cplusplus
+
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S6645C19  {
+  void *s6645c19f0;
+  int s6645c19f1;
+  void *s6645c19f2;
+  int s6645c19f3;
+  void  mf6645c19(); // _ZN8S6645C199mf6645c19Ev
+};
+//SIG(-1 S6645C19) C1{ m Fp Fi Fp Fi}
+
+
+void  S6645C19 ::mf6645c19(){}
+
+static void Test_S6645C19()
+{
+  {
+    init_simple_test("S6645C19");
+    S6645C19 lv;
+    check2(sizeof(lv), ABISELECT(32,16), "sizeof(S6645C19)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S6645C19)");
+    check_field_offset(lv, s6645c19f0, 0, "S6645C19.s6645c19f0");
+    check_field_offset(lv, s6645c19f1, ABISELECT(8,4), "S6645C19.s6645c19f1");
+    check_field_offset(lv, s6645c19f2, ABISELECT(16,8), "S6645C19.s6645c19f2");
+    check_field_offset(lv, s6645c19f3, ABISELECT(24,12), "S6645C19.s6645c19f3");
+  }
+}
+static Arrange_To_Call_Me vS6645C19(Test_S6645C19, "S6645C19", ABISELECT(32,16));
+
+#else // __cplusplus
+
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S6645C17  {
+  ::S6491C5 s6645c17f0;
+  ::S6645C19 s6645c17f1;
+  void  mf6645c17(); // _ZN8S6645C179mf6645c17Ev
+};
+//SIG(-1 S6645C17) C1{ m FC2{ BC3{ m Fp Fi[2]}} FC4{ m Fp Fi Fp Fi}}
+
+
+void  S6645C17 ::mf6645c17(){}
+
+static void Test_S6645C17()
+{
+  {
+    init_simple_test("S6645C17");
+    S6645C17 lv;
+    check2(sizeof(lv), ABISELECT(48,28), "sizeof(S6645C17)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S6645C17)");
+    check_field_offset(lv, s6645c17f0, 0, "S6645C17.s6645c17f0");
+    check_field_offset(lv, s6645c17f1, ABISELECT(16,12), "S6645C17.s6645c17f1");
+  }
+}
+static Arrange_To_Call_Me vS6645C17(Test_S6645C17, "S6645C17", ABISELECT(48,28));
+
+#else // __cplusplus
+
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S6645C23  {
+  ::S485C43 s6645c23f0;
+  ::S6645C19 s6645c23f1;
+  void  mf6645c23(); // _ZN8S6645C239mf6645c23Ev
+};
+//SIG(-1 S6645C23) C1{ m FC2{ BC3{ m Fp Fi[2]}} FC4{ m Fp Fi Fp Fi}}
+
+
+void  S6645C23 ::mf6645c23(){}
+
+static void Test_S6645C23()
+{
+  {
+    init_simple_test("S6645C23");
+    S6645C23 lv;
+    check2(sizeof(lv), ABISELECT(48,28), "sizeof(S6645C23)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S6645C23)");
+    check_field_offset(lv, s6645c23f0, 0, "S6645C23.s6645c23f0");
+    check_field_offset(lv, s6645c23f1, ABISELECT(16,12), "S6645C23.s6645c23f1");
+  }
+}
+static Arrange_To_Call_Me vS6645C23(Test_S6645C23, "S6645C23", ABISELECT(48,28));
+
+#else // __cplusplus
+
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S6645C31  {
+  void *s6645c31f0;
+  int s6645c31f1;
+  void *s6645c31f2;
+  int s6645c31f3;
+  void  mf6645c31(); // _ZN8S6645C319mf6645c31Ev
+};
+//SIG(-1 S6645C31) C1{ m Fp Fi Fp Fi}
+
+
+void  S6645C31 ::mf6645c31(){}
+
+static void Test_S6645C31()
+{
+  {
+    init_simple_test("S6645C31");
+    S6645C31 lv;
+    check2(sizeof(lv), ABISELECT(32,16), "sizeof(S6645C31)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S6645C31)");
+    check_field_offset(lv, s6645c31f0, 0, "S6645C31.s6645c31f0");
+    check_field_offset(lv, s6645c31f1, ABISELECT(8,4), "S6645C31.s6645c31f1");
+    check_field_offset(lv, s6645c31f2, ABISELECT(16,8), "S6645C31.s6645c31f2");
+    check_field_offset(lv, s6645c31f3, ABISELECT(24,12), "S6645C31.s6645c31f3");
+  }
+}
+static Arrange_To_Call_Me vS6645C31(Test_S6645C31, "S6645C31", ABISELECT(32,16));
+
+#else // __cplusplus
+
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S6645C29  {
+  ::S485C39 s6645c29f0;
+  ::S6645C31 s6645c29f1;
+  void  mf6645c29(); // _ZN8S6645C299mf6645c29Ev
+};
+//SIG(-1 S6645C29) C1{ m FC2{ BC3{ m Fp Fi[2]}} FC4{ m Fp Fi Fp Fi}}
+
+
+void  S6645C29 ::mf6645c29(){}
+
+static void Test_S6645C29()
+{
+  {
+    init_simple_test("S6645C29");
+    S6645C29 lv;
+    check2(sizeof(lv), ABISELECT(48,28), "sizeof(S6645C29)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S6645C29)");
+    check_field_offset(lv, s6645c29f0, 0, "S6645C29.s6645c29f0");
+    check_field_offset(lv, s6645c29f1, ABISELECT(16,12), "S6645C29.s6645c29f1");
+  }
+}
+static Arrange_To_Call_Me vS6645C29(Test_S6645C29, "S6645C29", ABISELECT(48,28));
+
+#else // __cplusplus
+
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S6645C3  {
+  ::S6645C4 s6645c3f0;
+  ::S6645C4 s6645c3f1;
+  ::S6645C4 s6645c3f2;
+  ::S6645C11 s6645c3f3;
+  ::S6645C11 s6645c3f4;
+  ::S6645C17 s6645c3f5;
+  ::S6645C17 s6645c3f6;
+  ::S6645C23 s6645c3f7;
+  ::S6645C23 s6645c3f8;
+  ::S6645C29 s6645c3f9;
+  void  mf6645c3(); // _ZN7S6645C38mf6645c3Ev
+};
+//SIG(1 S6645C3) C1{ m FC2{ m FC3{ BC4{ m Fp Fi[2]}} FC5{ m Fp Fi Fp Fi}} FC2 FC2 FC6{ m FC7{ BC4} FC5} FC6 FC8{ m FC9{ BC4} FC10{ m Fp Fi Fp Fi}} FC8 FC11{ m FC12{ BC4} FC10} FC11 FC13{ m FC14{ BC4} FC15{ m Fp Fi Fp Fi}}}
+
+
+void  S6645C3 ::mf6645c3(){}
+
+static void Test_S6645C3()
+{
+  {
+    init_simple_test("S6645C3");
+    S6645C3 lv;
+    check2(sizeof(lv), ABISELECT(480,280), "sizeof(S6645C3)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S6645C3)");
+    check_field_offset(lv, s6645c3f0, 0, "S6645C3.s6645c3f0");
+    check_field_offset(lv, s6645c3f1, ABISELECT(48,28), "S6645C3.s6645c3f1");
+    check_field_offset(lv, s6645c3f2, ABISELECT(96,56), "S6645C3.s6645c3f2");
+    check_field_offset(lv, s6645c3f3, ABISELECT(144,84), "S6645C3.s6645c3f3");
+    check_field_offset(lv, s6645c3f4, ABISELECT(192,112), "S6645C3.s6645c3f4");
+    check_field_offset(lv, s6645c3f5, ABISELECT(240,140), "S6645C3.s6645c3f5");
+    check_field_offset(lv, s6645c3f6, ABISELECT(288,168), "S6645C3.s6645c3f6");
+    check_field_offset(lv, s6645c3f7, ABISELECT(336,196), "S6645C3.s6645c3f7");
+    check_field_offset(lv, s6645c3f8, ABISELECT(384,224), "S6645C3.s6645c3f8");
+    check_field_offset(lv, s6645c3f9, ABISELECT(432,252), "S6645C3.s6645c3f9");
+  }
+}
+static Arrange_To_Call_Me vS6645C3(Test_S6645C3, "S6645C3", ABISELECT(480,280));
+
+#else // __cplusplus
+
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S6645C35_nt  {
+  void *s6645c35f0;
+  int s6645c35f1[6];
+  void  mf6645c35(); // _ZN11S6645C35_nt9mf6645c35Ev
+};
+//SIG(-1 S6645C35_nt) C1{ m Fp Fi[6]}
+
+
+void  S6645C35_nt ::mf6645c35(){}
+
+//skip512 S6645C35_nt
+
+#else // __cplusplus
+
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S6645C32  {
+  ::S485C18 s6645c32f0;
+  ::S485C14 s6645c32f1;
+  ::S6645C35_nt s6645c32f2;
+  void  mf6645c32(); // _ZN8S6645C329mf6645c32Ev
+};
+//SIG(-1 S6645C32) C1{ m FC2{ BC3{ m Fp Fi[2]}} FC4{ BC3} FC5{ m Fp Fi[6]}}
+
+
+void  S6645C32 ::mf6645c32(){}
+
+static void Test_S6645C32()
+{
+  {
+    init_simple_test("S6645C32");
+    S6645C32 lv;
+    check2(sizeof(lv), ABISELECT(64,52), "sizeof(S6645C32)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S6645C32)");
+    check_field_offset(lv, s6645c32f0, 0, "S6645C32.s6645c32f0");
+    check_field_offset(lv, s6645c32f1, ABISELECT(16,12), "S6645C32.s6645c32f1");
+    check_field_offset(lv, s6645c32f2, ABISELECT(32,24), "S6645C32.s6645c32f2");
+  }
+}
+static Arrange_To_Call_Me vS6645C32(Test_S6645C32, "S6645C32", ABISELECT(64,52));
+
+#else // __cplusplus
+
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S6645C38  {
+  ::S485C9_nt s6645c38f0;
+  ::S485C14 s6645c38f1;
+  ::S6645C35_nt s6645c38f2;
+  void  mf6645c38(); // _ZN8S6645C389mf6645c38Ev
+};
+//SIG(-1 S6645C38) C1{ m FC2{ BC3{ m Fp Fi[2]}} FC4{ BC3} FC5{ m Fp Fi[6]}}
+
+
+void  S6645C38 ::mf6645c38(){}
+
+static void Test_S6645C38()
+{
+  {
+    init_simple_test("S6645C38");
+    S6645C38 lv;
+    check2(sizeof(lv), ABISELECT(64,52), "sizeof(S6645C38)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S6645C38)");
+    check_field_offset(lv, s6645c38f0, 0, "S6645C38.s6645c38f0");
+    check_field_offset(lv, s6645c38f1, ABISELECT(16,12), "S6645C38.s6645c38f1");
+    check_field_offset(lv, s6645c38f2, ABISELECT(32,24), "S6645C38.s6645c38f2");
+  }
+}
+static Arrange_To_Call_Me vS6645C38(Test_S6645C38, "S6645C38", ABISELECT(64,52));
+
+#else // __cplusplus
+
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S6645C42_nt  : S485C10_nt {
+};
+//SIG(-1 S6645C42_nt) C1{ BC2{ m Fp Fi[2]}}
+
+
+
+//skip512 S6645C42_nt
+
+#else // __cplusplus
+
+extern Class_Descriptor cd_S485C10_nt;
+extern VTBL_ENTRY _ZTI10S485C10_nt[];
+static Base_Class bases_S6645C42_nt[] = {
+  // ofst, vfto, nneg, vtt_idx, base_vtt_idx, init_seq, direct, virtual
+  {&cd_S485C10_nt,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    -1, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {0}};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S6645C47  : S485C10_nt {
+};
+//SIG(-1 S6645C47) C1{ BC2{ m Fp Fi[2]}}
+
+
+
+static void Test_S6645C47()
+{
+  extern Class_Descriptor cd_S6645C47;
+  void *lvp;
+  {
+    ABISELECT(double,int) buf[ABISELECT(3,4)];
+    init_test(&cd_S6645C47, buf);
+    S6645C47 &lv = *(new (buf) S6645C47());
+    lvp = (void*)&lv;
+    check2(sizeof(lv), ABISELECT(16,12), "sizeof(S6645C47)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S6645C47)");
+    check_base_class_offset(lv, (S485C10_nt*), 0, "S6645C47");
+    test_class_info(&lv, &cd_S6645C47);
+  }
+  Check_Ctor_Dtor_Calls(lvp);
+}
+static Arrange_To_Call_Me vS6645C47(Test_S6645C47, "S6645C47", ABISELECT(16,12));
+
+#else // __cplusplus
+
+extern Class_Descriptor cd_S485C10_nt;
+extern VTBL_ENTRY _ZTI10S485C10_nt[];
+static Base_Class bases_S6645C47[] = {
+  // ofst, vfto, nneg, vtt_idx, base_vtt_idx, init_seq, direct, virtual
+  {&cd_S485C10_nt,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    -1, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {0}};
+Class_Descriptor cd_S6645C47 = {  "S6645C47", // class name
+  bases_S6645C47, 1,
+  0, // no vftv
+  0, //no vtt
+  ABISELECT(16,12), // object size
+  {0,0},0, // typeinfo_var
+  {0,0},0, // virtual function table var
+  2, // offset into main vftv pointed to by object[0]
+  {0,0},0, // virtual table table var
+  0, // n_initialized_bases
+  0, // has_virtual_bases
+  0, // has_class_type_fields
+  0, // alt-thunk-names
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S6645C46  {
+  void *s6645c46f0;
+  int s6645c46f1[2];
+  ::S6645C47 s6645c46f2;
+  void *s6645c46f3;
+  void  mf6645c46(); // _ZN8S6645C469mf6645c46Ev
+};
+//SIG(-1 S6645C46) C1{ m Fp Fi[2] FC2{ BC3{ m Fp Fi[2]}} Fp}
+
+
+void  S6645C46 ::mf6645c46(){}
+
+static void Test_S6645C46()
+{
+  {
+    init_simple_test("S6645C46");
+    S6645C46 lv;
+    check2(sizeof(lv), ABISELECT(40,28), "sizeof(S6645C46)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S6645C46)");
+    check_field_offset(lv, s6645c46f0, 0, "S6645C46.s6645c46f0");
+    check_field_offset(lv, s6645c46f1, ABISELECT(8,4), "S6645C46.s6645c46f1");
+    check_field_offset(lv, s6645c46f2, ABISELECT(16,12), "S6645C46.s6645c46f2");
+    check_field_offset(lv, s6645c46f3, ABISELECT(32,24), "S6645C46.s6645c46f3");
+  }
+}
+static Arrange_To_Call_Me vS6645C46(Test_S6645C46, "S6645C46", ABISELECT(40,28));
+
+#else // __cplusplus
+
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S6645C1  : S6645C2_nt {
+  void *s6645c1f0;
+  ::S6645C3 s6645c1f1[4];
+  ::S6645C32 s6645c1f2;
+  ::S6645C32 s6645c1f3;
+  ::S6645C38 s6645c1f4;
+  ::S6645C38 s6645c1f5;
+  ::S6645C38 s6645c1f6;
+  ::S6645C42_nt s6645c1f7;
+  ::S6645C42_nt s6645c1f8;
+  ::S6491C15 s6645c1f9;
+  ::S6645C46 s6645c1f10;
+  int s6645c1f11[3];
+  ::S6645C47 s6645c1f12;
+  virtual void  v1(); // _ZN7S6645C12v1Ev
+  virtual void  v2(); // _ZN7S6645C12v2Ev
+  virtual void  v3(); // _ZN7S6645C12v3Ev
+  virtual void  v4(); // _ZN7S6645C12v4Ev
+  virtual void  v5(); // _ZN7S6645C12v5Ev
+  virtual void  v6(); // _ZN7S6645C12v6Ev
+  virtual void  v7(); // _ZN7S6645C12v7Ev
+  virtual void  v8(); // _ZN7S6645C12v8Ev
+  virtual void  v9(); // _ZN7S6645C12v9Ev
+  virtual void  v10(); // _ZN7S6645C13v10Ev
+  virtual void  v11(); // _ZN7S6645C13v11Ev
+  virtual void  v12(); // _ZN7S6645C13v12Ev
+  virtual void  v13(); // _ZN7S6645C13v13Ev
+  virtual void  v14(); // _ZN7S6645C13v14Ev
+  virtual void  v15(); // _ZN7S6645C13v15Ev
+  virtual void  v16(); // _ZN7S6645C13v16Ev
+  virtual void  v17(); // _ZN7S6645C13v17Ev
+  virtual void  v18(); // _ZN7S6645C13v18Ev
+  virtual void  v19(); // _ZN7S6645C13v19Ev
+  virtual void  v20(); // _ZN7S6645C13v20Ev
+  virtual void  v21(); // _ZN7S6645C13v21Ev
+  virtual void  v22(); // _ZN7S6645C13v22Ev
+  virtual void  v23(); // _ZN7S6645C13v23Ev
+  virtual void  v24(); // _ZN7S6645C13v24Ev
+  virtual void  v25(); // _ZN7S6645C13v25Ev
+  virtual void  v26(); // _ZN7S6645C13v26Ev
+  virtual void  v27(); // _ZN7S6645C13v27Ev
+  ~S6645C1(); // tgen
+  S6645C1(); // tgen
+};
+//SIG(1 S6645C1) C1{ BC2{ vd v28 v29 v30 v31 v32 v33 v34 v35 v36 v37 v38 v39 v40 v41 v42 v43 v44 v45 v46 v47 v48 v49 v50 v51 v52 v53 v54} v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 v13 v14 v15 v16 v17 v18 v19 v20 v21 v22 v23 v24 v25 v26 v27 Fp FC3{ m FC4{ m FC5{ BC6{ m Fp Fi[2]}} FC7{ m Fp Fi Fp Fi}} FC4 FC4 FC8{ m FC9{ BC6} FC7} FC8 FC10{ m FC11{ BC6} FC12{ m Fp Fi Fp Fi}} FC10 FC13{ m FC14{ BC6} FC12} FC13 FC15{ m FC16{ BC6} FC17{ m Fp Fi Fp Fi}}}[4] FC18{ m FC19{ BC6} FC20{ BC6} FC21{ m Fp Fi[6]}} FC18 FC22{ m FC23{ BC6} FC20 FC21} FC22 FC22 FC24{ BC6} FC24 FC25{ m Fp Fi[2] FC19 Fp} FC26{ m Fp Fi[2] FC27{ BC6} Fp} Fi[3] FC27}
+
+
+void  S6645C1 ::v1(){vfunc_called(this, "_ZN7S6645C12v1Ev");}
+void  S6645C1 ::v2(){vfunc_called(this, "_ZN7S6645C12v2Ev");}
+void  S6645C1 ::v3(){vfunc_called(this, "_ZN7S6645C12v3Ev");}
+void  S6645C1 ::v4(){vfunc_called(this, "_ZN7S6645C12v4Ev");}
+void  S6645C1 ::v5(){vfunc_called(this, "_ZN7S6645C12v5Ev");}
+void  S6645C1 ::v6(){vfunc_called(this, "_ZN7S6645C12v6Ev");}
+void  S6645C1 ::v7(){vfunc_called(this, "_ZN7S6645C12v7Ev");}
+void  S6645C1 ::v8(){vfunc_called(this, "_ZN7S6645C12v8Ev");}
+void  S6645C1 ::v9(){vfunc_called(this, "_ZN7S6645C12v9Ev");}
+void  S6645C1 ::v10(){vfunc_called(this, "_ZN7S6645C13v10Ev");}
+void  S6645C1 ::v11(){vfunc_called(this, "_ZN7S6645C13v11Ev");}
+void  S6645C1 ::v12(){vfunc_called(this, "_ZN7S6645C13v12Ev");}
+void  S6645C1 ::v13(){vfunc_called(this, "_ZN7S6645C13v13Ev");}
+void  S6645C1 ::v14(){vfunc_called(this, "_ZN7S6645C13v14Ev");}
+void  S6645C1 ::v15(){vfunc_called(this, "_ZN7S6645C13v15Ev");}
+void  S6645C1 ::v16(){vfunc_called(this, "_ZN7S6645C13v16Ev");}
+void  S6645C1 ::v17(){vfunc_called(this, "_ZN7S6645C13v17Ev");}
+void  S6645C1 ::v18(){vfunc_called(this, "_ZN7S6645C13v18Ev");}
+void  S6645C1 ::v19(){vfunc_called(this, "_ZN7S6645C13v19Ev");}
+void  S6645C1 ::v20(){vfunc_called(this, "_ZN7S6645C13v20Ev");}
+void  S6645C1 ::v21(){vfunc_called(this, "_ZN7S6645C13v21Ev");}
+void  S6645C1 ::v22(){vfunc_called(this, "_ZN7S6645C13v22Ev");}
+void  S6645C1 ::v23(){vfunc_called(this, "_ZN7S6645C13v23Ev");}
+void  S6645C1 ::v24(){vfunc_called(this, "_ZN7S6645C13v24Ev");}
+void  S6645C1 ::v25(){vfunc_called(this, "_ZN7S6645C13v25Ev");}
+void  S6645C1 ::v26(){vfunc_called(this, "_ZN7S6645C13v26Ev");}
+void  S6645C1 ::v27(){vfunc_called(this, "_ZN7S6645C13v27Ev");}
+S6645C1 ::~S6645C1(){ note_dtor("S6645C1", this);} // tgen
+S6645C1 ::S6645C1(){ note_ctor("S6645C1", this);} // tgen
+
+static void Test_S6645C1()
+{
+  extern Class_Descriptor cd_S6645C1;
+  void *lvp;
+  {
+    ABISELECT(double,int) buf[ABISELECT(301,374)];
+    init_test(&cd_S6645C1, buf);
+    S6645C1 *dp, &lv = *(dp=new (buf) S6645C1());
+    lvp = (void*)&lv;
+    check2(sizeof(lv), ABISELECT(2400,1492), "sizeof(S6645C1)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S6645C1)");
+    check_base_class_offset(lv, (S6645C2_nt*), 0, "S6645C1");
+    check_field_offset(lv, s6645c1f0, ABISELECT(8,4), "S6645C1.s6645c1f0");
+    check_field_offset(lv, s6645c1f1, ABISELECT(16,8), "S6645C1.s6645c1f1");
+    check_field_offset(lv, s6645c1f2, ABISELECT(1936,1128), "S6645C1.s6645c1f2");
+    check_field_offset(lv, s6645c1f3, ABISELECT(2000,1180), "S6645C1.s6645c1f3");
+    check_field_offset(lv, s6645c1f4, ABISELECT(2064,1232), "S6645C1.s6645c1f4");
+    check_field_offset(lv, s6645c1f5, ABISELECT(2128,1284), "S6645C1.s6645c1f5");
+    check_field_offset(lv, s6645c1f6, ABISELECT(2192,1336), "S6645C1.s6645c1f6");
+    check_field_offset(lv, s6645c1f7, ABISELECT(2256,1388), "S6645C1.s6645c1f7");
+    check_field_offset(lv, s6645c1f8, ABISELECT(2272,1400), "S6645C1.s6645c1f8");
+    check_field_offset(lv, s6645c1f9, ABISELECT(2288,1412), "S6645C1.s6645c1f9");
+    check_field_offset(lv, s6645c1f10, ABISELECT(2328,1440), "S6645C1.s6645c1f10");
+    check_field_offset(lv, s6645c1f11, ABISELECT(2368,1468), "S6645C1.s6645c1f11");
+    check_field_offset(lv, s6645c1f12, ABISELECT(2384,1480), "S6645C1.s6645c1f12");
+    test_class_info(&lv, &cd_S6645C1);
+    dp->~S6645C1();
+  }
+  Check_Ctor_Dtor_Calls(lvp);
+}
+static Arrange_To_Call_Me vS6645C1(Test_S6645C1, "S6645C1", ABISELECT(2400,1492));
+
+#else // __cplusplus
+
+extern void _ZN7S6645C1C1Ev();
+extern void _ZN7S6645C1D1Ev();
+Name_Map name_map_S6645C1[] = {
+  NSPAIR(_ZN7S6645C1C1Ev),
+  NSPAIR(_ZN7S6645C1D1Ev),
+  {0,0}
+};
+extern Class_Descriptor cd_S6645C2_nt;
+extern VTBL_ENTRY _ZTI10S6645C2_nt[];
+extern  VTBL_ENTRY _ZTV10S6645C2_nt[];
+static Base_Class bases_S6645C1[] = {
+  // ofst, vfto, nneg, vtt_idx, base_vtt_idx, init_seq, direct, virtual
+  {&cd_S6645C2_nt,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    1, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {0}};
+extern VTBL_ENTRY _ZTI7S6645C1[];
+extern void _ZN7S6645C1D1Ev();
+extern void _ZN7S6645C1D0Ev();
+extern void _ZN10S6645C2_nt3v28Ev();
+extern void _ZN10S6645C2_nt3v29Ev();
+extern void _ZN10S6645C2_nt3v30Ev();
+extern void _ZN10S6645C2_nt3v31Ev();
+extern void _ZN10S6645C2_nt3v32Ev();
+extern void _ZN10S6645C2_nt3v33Ev();
+extern void _ZN10S6645C2_nt3v34Ev();
+extern void _ZN10S6645C2_nt3v35Ev();
+extern void _ZN10S6645C2_nt3v36Ev();
+extern void _ZN10S6645C2_nt3v37Ev();
+extern void _ZN10S6645C2_nt3v38Ev();
+extern void _ZN10S6645C2_nt3v39Ev();
+extern void _ZN10S6645C2_nt3v40Ev();
+extern void _ZN10S6645C2_nt3v41Ev();
+extern void _ZN10S6645C2_nt3v42Ev();
+extern void _ZN10S6645C2_nt3v43Ev();
+extern void _ZN10S6645C2_nt3v44Ev();
+extern void _ZN10S6645C2_nt3v45Ev();
+extern void _ZN10S6645C2_nt3v46Ev();
+extern void _ZN10S6645C2_nt3v47Ev();
+extern void _ZN10S6645C2_nt3v48Ev();
+extern void _ZN10S6645C2_nt3v49Ev();
+extern void _ZN10S6645C2_nt3v50Ev();
+extern void _ZN10S6645C2_nt3v51Ev();
+extern void _ZN10S6645C2_nt3v52Ev();
+extern void _ZN10S6645C2_nt3v53Ev();
+extern void _ZN10S6645C2_nt3v54Ev();
+extern void _ZN7S6645C12v1Ev();
+extern void _ZN7S6645C12v2Ev();
+extern void _ZN7S6645C12v3Ev();
+extern void _ZN7S6645C12v4Ev();
+extern void _ZN7S6645C12v5Ev();
+extern void _ZN7S6645C12v6Ev();
+extern void _ZN7S6645C12v7Ev();
+extern void _ZN7S6645C12v8Ev();
+extern void _ZN7S6645C12v9Ev();
+extern void _ZN7S6645C13v10Ev();
+extern void _ZN7S6645C13v11Ev();
+extern void _ZN7S6645C13v12Ev();
+extern void _ZN7S6645C13v13Ev();
+extern void _ZN7S6645C13v14Ev();
+extern void _ZN7S6645C13v15Ev();
+extern void _ZN7S6645C13v16Ev();
+extern void _ZN7S6645C13v17Ev();
+extern void _ZN7S6645C13v18Ev();
+extern void _ZN7S6645C13v19Ev();
+extern void _ZN7S6645C13v20Ev();
+extern void _ZN7S6645C13v21Ev();
+extern void _ZN7S6645C13v22Ev();
+extern void _ZN7S6645C13v23Ev();
+extern void _ZN7S6645C13v24Ev();
+extern void _ZN7S6645C13v25Ev();
+extern void _ZN7S6645C13v26Ev();
+extern void _ZN7S6645C13v27Ev();
+static  VTBL_ENTRY vtc_S6645C1[] = {
+  0,
+  (VTBL_ENTRY)&(_ZTI7S6645C1[0]),
+  (VTBL_ENTRY)&_ZN7S6645C1D1Ev,
+  (VTBL_ENTRY)&_ZN7S6645C1D0Ev,
+  (VTBL_ENTRY)&_ZN10S6645C2_nt3v28Ev,
+  (VTBL_ENTRY)&_ZN10S6645C2_nt3v29Ev,
+  (VTBL_ENTRY)&_ZN10S6645C2_nt3v30Ev,
+  (VTBL_ENTRY)&_ZN10S6645C2_nt3v31Ev,
+  (VTBL_ENTRY)&_ZN10S6645C2_nt3v32Ev,
+  (VTBL_ENTRY)&_ZN10S6645C2_nt3v33Ev,
+  (VTBL_ENTRY)&_ZN10S6645C2_nt3v34Ev,
+  (VTBL_ENTRY)&_ZN10S6645C2_nt3v35Ev,
+  (VTBL_ENTRY)&_ZN10S6645C2_nt3v36Ev,
+  (VTBL_ENTRY)&_ZN10S6645C2_nt3v37Ev,
+  (VTBL_ENTRY)&_ZN10S6645C2_nt3v38Ev,
+  (VTBL_ENTRY)&_ZN10S6645C2_nt3v39Ev,
+  (VTBL_ENTRY)&_ZN10S6645C2_nt3v40Ev,
+  (VTBL_ENTRY)&_ZN10S6645C2_nt3v41Ev,
+  (VTBL_ENTRY)&_ZN10S6645C2_nt3v42Ev,
+  (VTBL_ENTRY)&_ZN10S6645C2_nt3v43Ev,
+  (VTBL_ENTRY)&_ZN10S6645C2_nt3v44Ev,
+  (VTBL_ENTRY)&_ZN10S6645C2_nt3v45Ev,
+  (VTBL_ENTRY)&_ZN10S6645C2_nt3v46Ev,
+  (VTBL_ENTRY)&_ZN10S6645C2_nt3v47Ev,
+  (VTBL_ENTRY)&_ZN10S6645C2_nt3v48Ev,
+  (VTBL_ENTRY)&_ZN10S6645C2_nt3v49Ev,
+  (VTBL_ENTRY)&_ZN10S6645C2_nt3v50Ev,
+  (VTBL_ENTRY)&_ZN10S6645C2_nt3v51Ev,
+  (VTBL_ENTRY)&_ZN10S6645C2_nt3v52Ev,
+  (VTBL_ENTRY)&_ZN10S6645C2_nt3v53Ev,
+  (VTBL_ENTRY)&_ZN10S6645C2_nt3v54Ev,
+  (VTBL_ENTRY)&_ZN7S6645C12v1Ev,
+  (VTBL_ENTRY)&_ZN7S6645C12v2Ev,
+  (VTBL_ENTRY)&_ZN7S6645C12v3Ev,
+  (VTBL_ENTRY)&_ZN7S6645C12v4Ev,
+  (VTBL_ENTRY)&_ZN7S6645C12v5Ev,
+  (VTBL_ENTRY)&_ZN7S6645C12v6Ev,
+  (VTBL_ENTRY)&_ZN7S6645C12v7Ev,
+  (VTBL_ENTRY)&_ZN7S6645C12v8Ev,
+  (VTBL_ENTRY)&_ZN7S6645C12v9Ev,
+  (VTBL_ENTRY)&_ZN7S6645C13v10Ev,
+  (VTBL_ENTRY)&_ZN7S6645C13v11Ev,
+  (VTBL_ENTRY)&_ZN7S6645C13v12Ev,
+  (VTBL_ENTRY)&_ZN7S6645C13v13Ev,
+  (VTBL_ENTRY)&_ZN7S6645C13v14Ev,
+  (VTBL_ENTRY)&_ZN7S6645C13v15Ev,
+  (VTBL_ENTRY)&_ZN7S6645C13v16Ev,
+  (VTBL_ENTRY)&_ZN7S6645C13v17Ev,
+  (VTBL_ENTRY)&_ZN7S6645C13v18Ev,
+  (VTBL_ENTRY)&_ZN7S6645C13v19Ev,
+  (VTBL_ENTRY)&_ZN7S6645C13v20Ev,
+  (VTBL_ENTRY)&_ZN7S6645C13v21Ev,
+  (VTBL_ENTRY)&_ZN7S6645C13v22Ev,
+  (VTBL_ENTRY)&_ZN7S6645C13v23Ev,
+  (VTBL_ENTRY)&_ZN7S6645C13v24Ev,
+  (VTBL_ENTRY)&_ZN7S6645C13v25Ev,
+  (VTBL_ENTRY)&_ZN7S6645C13v26Ev,
+  (VTBL_ENTRY)&_ZN7S6645C13v27Ev,
+};
+extern VTBL_ENTRY _ZTI7S6645C1[];
+extern  VTBL_ENTRY _ZTV7S6645C1[];
+Class_Descriptor cd_S6645C1 = {  "S6645C1", // class name
+  bases_S6645C1, 1,
+  &(vtc_S6645C1[0]), // expected_vtbl_contents
+  0, //no vtt
+  ABISELECT(2400,1492), // object size
+  NSPAIRA(_ZTI7S6645C1),ABISELECT(24,12), //typeinfo_var
+  NSPAIRA(_ZTV7S6645C1),58, //virtual function table var
+  2, // offset into main vftv pointed to by object[0]
+  {0,0},0, // virtual table table var
+  1, // n_initialized_bases
+  0, // has_virtual_bases
+  1, // has_class_type_fields
+  0, // alt-thunk-names
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S583C5  {
+  int s583c5f0;
+  __tsi64 s583c5f1;
+  void *s583c5f2[4];
+  int s583c5f3[2];
+  void *s583c5f4;
+  ::S485C6_nt s583c5f5;
+  void *s583c5f6[2];
+  virtual  ~S583C5(); // _ZN6S583C5D1Ev
+  virtual void  v4(); // _ZN6S583C52v4Ev
+  virtual void  v5(); // _ZN6S583C52v5Ev
+  virtual void  v6(); // _ZN6S583C52v6Ev
+  virtual void  v7(); // _ZN6S583C52v7Ev
+  virtual void  v8(); // _ZN6S583C52v8Ev
+  virtual void  v9(); // _ZN6S583C52v9Ev
+  virtual void  v10(); // _ZN6S583C53v10Ev
+  virtual void  v11(); // _ZN6S583C53v11Ev
+  virtual void  v12(); // _ZN6S583C53v12Ev
+  virtual void  v13(); // _ZN6S583C53v13Ev
+  virtual void  v14(); // _ZN6S583C53v14Ev
+  virtual void  v15(); // _ZN6S583C53v15Ev
+  virtual void  v16(); // _ZN6S583C53v16Ev
+  virtual void  v17(); // _ZN6S583C53v17Ev
+  virtual void  v18(); // _ZN6S583C53v18Ev
+  virtual void  v19(); // _ZN6S583C53v19Ev
+  virtual void  v20(); // _ZN6S583C53v20Ev
+  virtual void  v21(); // _ZN6S583C53v21Ev
+  virtual void  v22(); // _ZN6S583C53v22Ev
+  virtual void  v23(); // _ZN6S583C53v23Ev
+  virtual void  v24(); // _ZN6S583C53v24Ev
+  virtual void  v25(); // _ZN6S583C53v25Ev
+  virtual void  v26(); // _ZN6S583C53v26Ev
+  virtual void  v27(); // _ZN6S583C53v27Ev
+  virtual void  v28(); // _ZN6S583C53v28Ev
+  virtual void  v29(); // _ZN6S583C53v29Ev
+  virtual void  v30(); // _ZN6S583C53v30Ev
+  virtual void  v31(); // _ZN6S583C53v31Ev
+  virtual void  v32(); // _ZN6S583C53v32Ev
+  virtual void  v33(); // _ZN6S583C53v33Ev
+  virtual void  v34(); // _ZN6S583C53v34Ev
+  virtual void  v35(); // _ZN6S583C53v35Ev
+  virtual void  v36(); // _ZN6S583C53v36Ev
+  virtual void  v37(); // _ZN6S583C53v37Ev
+  virtual void  v38(); // _ZN6S583C53v38Ev
+  virtual void  v39(); // _ZN6S583C53v39Ev
+  virtual void  v40(); // _ZN6S583C53v40Ev
+  virtual void  v41(); // _ZN6S583C53v41Ev
+  virtual void  v42(); // _ZN6S583C53v42Ev
+  virtual void  v43(); // _ZN6S583C53v43Ev
+  virtual void  v44(); // _ZN6S583C53v44Ev
+  virtual void  v45(); // _ZN6S583C53v45Ev
+  virtual void  v46(); // _ZN6S583C53v46Ev
+  virtual void  v47(); // _ZN6S583C53v47Ev
+  virtual void  v48(); // _ZN6S583C53v48Ev
+  virtual void  v49(); // _ZN6S583C53v49Ev
+  virtual void  v50(); // _ZN6S583C53v50Ev
+  virtual void  v51(); // _ZN6S583C53v51Ev
+  virtual void  v52(); // _ZN6S583C53v52Ev
+  virtual void  v53(); // _ZN6S583C53v53Ev
+  virtual void  v54(); // _ZN6S583C53v54Ev
+  virtual void  v55(); // _ZN6S583C53v55Ev
+  virtual void  v56(); // _ZN6S583C53v56Ev
+  virtual void  v57(); // _ZN6S583C53v57Ev
+  virtual void  v58(); // _ZN6S583C53v58Ev
+  virtual void  v59(); // _ZN6S583C53v59Ev
+  virtual void  v60(); // _ZN6S583C53v60Ev
+  virtual void  v61(); // _ZN6S583C53v61Ev
+  virtual void  v62(); // _ZN6S583C53v62Ev
+  virtual void  v63(); // _ZN6S583C53v63Ev
+  virtual void  v64(); // _ZN6S583C53v64Ev
+  virtual void  v65(); // _ZN6S583C53v65Ev
+  virtual void  v66(); // _ZN6S583C53v66Ev
+  virtual void  v67(); // _ZN6S583C53v67Ev
+  S583C5(); // tgen
+};
+//SIG(-1 S583C5) C1{ vd v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 v13 v14 v15 v16 v17 v18 v19 v20 v21 v22 v23 v24 v25 v26 v27 v28 v29 v30 v31 v32 v33 v34 v35 v36 v37 v38 v39 v40 v41 v42 v43 v44 v45 v46 v47 v48 v49 v50 v51 v52 v53 v54 v55 v56 v57 v58 v59 v60 v61 v62 v63 v64 Fi FL Fp[4] Fi[2] Fp FC2{ m Fi[2]} Fp[2]}
+
+
+ S583C5 ::~S583C5(){ note_dtor("S583C5", this);}
+void  S583C5 ::v4(){vfunc_called(this, "_ZN6S583C52v4Ev");}
+void  S583C5 ::v5(){vfunc_called(this, "_ZN6S583C52v5Ev");}
+void  S583C5 ::v6(){vfunc_called(this, "_ZN6S583C52v6Ev");}
+void  S583C5 ::v7(){vfunc_called(this, "_ZN6S583C52v7Ev");}
+void  S583C5 ::v8(){vfunc_called(this, "_ZN6S583C52v8Ev");}
+void  S583C5 ::v9(){vfunc_called(this, "_ZN6S583C52v9Ev");}
+void  S583C5 ::v10(){vfunc_called(this, "_ZN6S583C53v10Ev");}
+void  S583C5 ::v11(){vfunc_called(this, "_ZN6S583C53v11Ev");}
+void  S583C5 ::v12(){vfunc_called(this, "_ZN6S583C53v12Ev");}
+void  S583C5 ::v13(){vfunc_called(this, "_ZN6S583C53v13Ev");}
+void  S583C5 ::v14(){vfunc_called(this, "_ZN6S583C53v14Ev");}
+void  S583C5 ::v15(){vfunc_called(this, "_ZN6S583C53v15Ev");}
+void  S583C5 ::v16(){vfunc_called(this, "_ZN6S583C53v16Ev");}
+void  S583C5 ::v17(){vfunc_called(this, "_ZN6S583C53v17Ev");}
+void  S583C5 ::v18(){vfunc_called(this, "_ZN6S583C53v18Ev");}
+void  S583C5 ::v19(){vfunc_called(this, "_ZN6S583C53v19Ev");}
+void  S583C5 ::v20(){vfunc_called(this, "_ZN6S583C53v20Ev");}
+void  S583C5 ::v21(){vfunc_called(this, "_ZN6S583C53v21Ev");}
+void  S583C5 ::v22(){vfunc_called(this, "_ZN6S583C53v22Ev");}
+void  S583C5 ::v23(){vfunc_called(this, "_ZN6S583C53v23Ev");}
+void  S583C5 ::v24(){vfunc_called(this, "_ZN6S583C53v24Ev");}
+void  S583C5 ::v25(){vfunc_called(this, "_ZN6S583C53v25Ev");}
+void  S583C5 ::v26(){vfunc_called(this, "_ZN6S583C53v26Ev");}
+void  S583C5 ::v27(){vfunc_called(this, "_ZN6S583C53v27Ev");}
+void  S583C5 ::v28(){vfunc_called(this, "_ZN6S583C53v28Ev");}
+void  S583C5 ::v29(){vfunc_called(this, "_ZN6S583C53v29Ev");}
+void  S583C5 ::v30(){vfunc_called(this, "_ZN6S583C53v30Ev");}
+void  S583C5 ::v31(){vfunc_called(this, "_ZN6S583C53v31Ev");}
+void  S583C5 ::v32(){vfunc_called(this, "_ZN6S583C53v32Ev");}
+void  S583C5 ::v33(){vfunc_called(this, "_ZN6S583C53v33Ev");}
+void  S583C5 ::v34(){vfunc_called(this, "_ZN6S583C53v34Ev");}
+void  S583C5 ::v35(){vfunc_called(this, "_ZN6S583C53v35Ev");}
+void  S583C5 ::v36(){vfunc_called(this, "_ZN6S583C53v36Ev");}
+void  S583C5 ::v37(){vfunc_called(this, "_ZN6S583C53v37Ev");}
+void  S583C5 ::v38(){vfunc_called(this, "_ZN6S583C53v38Ev");}
+void  S583C5 ::v39(){vfunc_called(this, "_ZN6S583C53v39Ev");}
+void  S583C5 ::v40(){vfunc_called(this, "_ZN6S583C53v40Ev");}
+void  S583C5 ::v41(){vfunc_called(this, "_ZN6S583C53v41Ev");}
+void  S583C5 ::v42(){vfunc_called(this, "_ZN6S583C53v42Ev");}
+void  S583C5 ::v43(){vfunc_called(this, "_ZN6S583C53v43Ev");}
+void  S583C5 ::v44(){vfunc_called(this, "_ZN6S583C53v44Ev");}
+void  S583C5 ::v45(){vfunc_called(this, "_ZN6S583C53v45Ev");}
+void  S583C5 ::v46(){vfunc_called(this, "_ZN6S583C53v46Ev");}
+void  S583C5 ::v47(){vfunc_called(this, "_ZN6S583C53v47Ev");}
+void  S583C5 ::v48(){vfunc_called(this, "_ZN6S583C53v48Ev");}
+void  S583C5 ::v49(){vfunc_called(this, "_ZN6S583C53v49Ev");}
+void  S583C5 ::v50(){vfunc_called(this, "_ZN6S583C53v50Ev");}
+void  S583C5 ::v51(){vfunc_called(this, "_ZN6S583C53v51Ev");}
+void  S583C5 ::v52(){vfunc_called(this, "_ZN6S583C53v52Ev");}
+void  S583C5 ::v53(){vfunc_called(this, "_ZN6S583C53v53Ev");}
+void  S583C5 ::v54(){vfunc_called(this, "_ZN6S583C53v54Ev");}
+void  S583C5 ::v55(){vfunc_called(this, "_ZN6S583C53v55Ev");}
+void  S583C5 ::v56(){vfunc_called(this, "_ZN6S583C53v56Ev");}
+void  S583C5 ::v57(){vfunc_called(this, "_ZN6S583C53v57Ev");}
+void  S583C5 ::v58(){vfunc_called(this, "_ZN6S583C53v58Ev");}
+void  S583C5 ::v59(){vfunc_called(this, "_ZN6S583C53v59Ev");}
+void  S583C5 ::v60(){vfunc_called(this, "_ZN6S583C53v60Ev");}
+void  S583C5 ::v61(){vfunc_called(this, "_ZN6S583C53v61Ev");}
+void  S583C5 ::v62(){vfunc_called(this, "_ZN6S583C53v62Ev");}
+void  S583C5 ::v63(){vfunc_called(this, "_ZN6S583C53v63Ev");}
+void  S583C5 ::v64(){vfunc_called(this, "_ZN6S583C53v64Ev");}
+void  S583C5 ::v65(){vfunc_called(this, "_ZN6S583C53v65Ev");}
+void  S583C5 ::v66(){vfunc_called(this, "_ZN6S583C53v66Ev");}
+void  S583C5 ::v67(){vfunc_called(this, "_ZN6S583C53v67Ev");}
+S583C5 ::S583C5(){ note_ctor("S583C5", this);} // tgen
+
+static void Test_S583C5()
+{
+  extern Class_Descriptor cd_S583C5;
+  void *lvp;
+  {
+    ABISELECT(double,int) buf[ABISELECT(13,16)];
+    init_test(&cd_S583C5, buf);
+    S583C5 *dp, &lv = *(dp=new (buf) S583C5());
+    lvp = (void*)&lv;
+    check2(sizeof(lv), ABISELECT(96,60), "sizeof(S583C5)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S583C5)");
+    check_field_offset(lv, s583c5f0, ABISELECT(8,4), "S583C5.s583c5f0");
+    check_field_offset(lv, s583c5f1, ABISELECT(16,8), "S583C5.s583c5f1");
+    check_field_offset(lv, s583c5f2, ABISELECT(24,16), "S583C5.s583c5f2");
+    check_field_offset(lv, s583c5f3, ABISELECT(56,32), "S583C5.s583c5f3");
+    check_field_offset(lv, s583c5f4, ABISELECT(64,40), "S583C5.s583c5f4");
+    check_field_offset(lv, s583c5f5, ABISELECT(72,44), "S583C5.s583c5f5");
+    check_field_offset(lv, s583c5f6, ABISELECT(80,52), "S583C5.s583c5f6");
+    test_class_info(&lv, &cd_S583C5);
+    dp->~S583C5();
+  }
+  Check_Ctor_Dtor_Calls(lvp);
+}
+static Arrange_To_Call_Me vS583C5(Test_S583C5, "S583C5", ABISELECT(96,60));
+
+#else // __cplusplus
+
+extern void _ZN6S583C5C1Ev();
+extern void _ZN6S583C5D1Ev();
+Name_Map name_map_S583C5[] = {
+  NSPAIR(_ZN6S583C5C1Ev),
+  NSPAIR(_ZN6S583C5D1Ev),
+  {0,0}
+};
+extern VTBL_ENTRY _ZTI6S583C5[];
+extern void _ZN6S583C5D1Ev();
+extern void _ZN6S583C5D0Ev();
+extern void _ZN6S583C52v4Ev();
+extern void _ZN6S583C52v5Ev();
+extern void _ZN6S583C52v6Ev();
+extern void _ZN6S583C52v7Ev();
+extern void _ZN6S583C52v8Ev();
+extern void _ZN6S583C52v9Ev();
+extern void _ZN6S583C53v10Ev();
+extern void _ZN6S583C53v11Ev();
+extern void _ZN6S583C53v12Ev();
+extern void _ZN6S583C53v13Ev();
+extern void _ZN6S583C53v14Ev();
+extern void _ZN6S583C53v15Ev();
+extern void _ZN6S583C53v16Ev();
+extern void _ZN6S583C53v17Ev();
+extern void _ZN6S583C53v18Ev();
+extern void _ZN6S583C53v19Ev();
+extern void _ZN6S583C53v20Ev();
+extern void _ZN6S583C53v21Ev();
+extern void _ZN6S583C53v22Ev();
+extern void _ZN6S583C53v23Ev();
+extern void _ZN6S583C53v24Ev();
+extern void _ZN6S583C53v25Ev();
+extern void _ZN6S583C53v26Ev();
+extern void _ZN6S583C53v27Ev();
+extern void _ZN6S583C53v28Ev();
+extern void _ZN6S583C53v29Ev();
+extern void _ZN6S583C53v30Ev();
+extern void _ZN6S583C53v31Ev();
+extern void _ZN6S583C53v32Ev();
+extern void _ZN6S583C53v33Ev();
+extern void _ZN6S583C53v34Ev();
+extern void _ZN6S583C53v35Ev();
+extern void _ZN6S583C53v36Ev();
+extern void _ZN6S583C53v37Ev();
+extern void _ZN6S583C53v38Ev();
+extern void _ZN6S583C53v39Ev();
+extern void _ZN6S583C53v40Ev();
+extern void _ZN6S583C53v41Ev();
+extern void _ZN6S583C53v42Ev();
+extern void _ZN6S583C53v43Ev();
+extern void _ZN6S583C53v44Ev();
+extern void _ZN6S583C53v45Ev();
+extern void _ZN6S583C53v46Ev();
+extern void _ZN6S583C53v47Ev();
+extern void _ZN6S583C53v48Ev();
+extern void _ZN6S583C53v49Ev();
+extern void _ZN6S583C53v50Ev();
+extern void _ZN6S583C53v51Ev();
+extern void _ZN6S583C53v52Ev();
+extern void _ZN6S583C53v53Ev();
+extern void _ZN6S583C53v54Ev();
+extern void _ZN6S583C53v55Ev();
+extern void _ZN6S583C53v56Ev();
+extern void _ZN6S583C53v57Ev();
+extern void _ZN6S583C53v58Ev();
+extern void _ZN6S583C53v59Ev();
+extern void _ZN6S583C53v60Ev();
+extern void _ZN6S583C53v61Ev();
+extern void _ZN6S583C53v62Ev();
+extern void _ZN6S583C53v63Ev();
+extern void _ZN6S583C53v64Ev();
+extern void _ZN6S583C53v65Ev();
+extern void _ZN6S583C53v66Ev();
+extern void _ZN6S583C53v67Ev();
+static  VTBL_ENTRY vtc_S583C5[] = {
+  0,
+  (VTBL_ENTRY)&(_ZTI6S583C5[0]),
+  (VTBL_ENTRY)&_ZN6S583C5D1Ev,
+  (VTBL_ENTRY)&_ZN6S583C5D0Ev,
+  (VTBL_ENTRY)&_ZN6S583C52v4Ev,
+  (VTBL_ENTRY)&_ZN6S583C52v5Ev,
+  (VTBL_ENTRY)&_ZN6S583C52v6Ev,
+  (VTBL_ENTRY)&_ZN6S583C52v7Ev,
+  (VTBL_ENTRY)&_ZN6S583C52v8Ev,
+  (VTBL_ENTRY)&_ZN6S583C52v9Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v10Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v11Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v12Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v13Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v14Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v15Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v16Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v17Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v18Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v19Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v20Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v21Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v22Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v23Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v24Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v25Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v26Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v27Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v28Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v29Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v30Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v31Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v32Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v33Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v34Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v35Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v36Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v37Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v38Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v39Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v40Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v41Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v42Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v43Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v44Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v45Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v46Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v47Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v48Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v49Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v50Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v51Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v52Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v53Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v54Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v55Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v56Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v57Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v58Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v59Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v60Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v61Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v62Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v63Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v64Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v65Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v66Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v67Ev,
+};
+extern VTBL_ENTRY _ZTI6S583C5[];
+extern  VTBL_ENTRY _ZTV6S583C5[];
+Class_Descriptor cd_S583C5 = {  "S583C5", // class name
+  0,0,//no base classes
+  &(vtc_S583C5[0]), // expected_vtbl_contents
+  0, //no vtt
+  ABISELECT(96,60), // object size
+  NSPAIRA(_ZTI6S583C5),ABISELECT(16,8), //typeinfo_var
+  NSPAIRA(_ZTV6S583C5),68, //virtual function table var
+  2, // offset into main vftv pointed to by object[0]
+  {0,0},0, // virtual table table var
+  0, // n_initialized_bases
+  0, // has_virtual_bases
+  1, // has_class_type_fields
+  0, // alt-thunk-names
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S583C4  : S583C5 {
+  int s583c4f0[2];
+  void *s583c4f1;
+  int s583c4f2[2];
+  ::S485C37_nt s583c4f3;
+  ::S485C37_nt s583c4f4;
+  ::S2261C30 s583c4f5;
+  ::S485C37_nt s583c4f6;
+  unsigned int s583c4f7:1;
+  unsigned int s583c4f8:1;
+  unsigned int s583c4f9:1;
+  unsigned int s583c4f10:1;
+  unsigned int s583c4f11:1;
+  int s583c4f12[2];
+  virtual  ~S583C4(); // _ZN6S583C4D1Ev
+  virtual void  v68(); // _ZN6S583C43v68Ev
+  virtual void  v69(); // _ZN6S583C43v69Ev
+  virtual void  v70(); // _ZN6S583C43v70Ev
+  virtual void  v71(); // _ZN6S583C43v71Ev
+  virtual void  v72(); // _ZN6S583C43v72Ev
+  virtual void  v73(); // _ZN6S583C43v73Ev
+  virtual void  v74(); // _ZN6S583C43v74Ev
+  virtual void  v75(); // _ZN6S583C43v75Ev
+  virtual void  v76(); // _ZN6S583C43v76Ev
+  virtual void  v77(); // _ZN6S583C43v77Ev
+  virtual void  v78(); // _ZN6S583C43v78Ev
+  virtual void  v79(); // _ZN6S583C43v79Ev
+  virtual void  v80(); // _ZN6S583C43v80Ev
+  virtual void  v81(); // _ZN6S583C43v81Ev
+  virtual void  v82(); // _ZN6S583C43v82Ev
+  virtual void  v83(); // _ZN6S583C43v83Ev
+  virtual void  v84(); // _ZN6S583C43v84Ev
+  virtual void  v85(); // _ZN6S583C43v85Ev
+  virtual void  v86(); // _ZN6S583C43v86Ev
+  virtual void  v87(); // _ZN6S583C43v87Ev
+  virtual void  v88(); // _ZN6S583C43v88Ev
+  virtual void  v89(); // _ZN6S583C43v89Ev
+  S583C4(); // tgen
+};
+//SIG(-1 S583C4) C1{ BC2{ vd v23 v24 v25 v26 v27 v28 v29 v30 v31 v32 v33 v34 v35 v36 v37 v38 v39 v40 v41 v42 v43 v44 v45 v46 v47 v48 v49 v50 v51 v52 v53 v54 v55 v56 v57 v58 v59 v60 v61 v62 v63 v64 v65 v66 v67 v68 v69 v70 v71 v72 v73 v74 v75 v76 v77 v78 v79 v80 v81 v82 v83 v84 v85 v86 Fi FL Fp[4] Fi[2] Fp FC3{ m Fi[2]} Fp[2]} vd v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 v13 v14 v15 v16 v17 v18 v19 v20 v21 v22 Fi[2] Fp Fi[2] FC4{ BC5{ BC6{ BC7{ m Fp Fi[2]}}}} FC4 FC8{ m} FC4 Fi:1 Fi:1 Fi:1 Fi:1 Fi:1 Fi[2]}
+
+
+ S583C4 ::~S583C4(){ note_dtor("S583C4", this);}
+void  S583C4 ::v68(){vfunc_called(this, "_ZN6S583C43v68Ev");}
+void  S583C4 ::v69(){vfunc_called(this, "_ZN6S583C43v69Ev");}
+void  S583C4 ::v70(){vfunc_called(this, "_ZN6S583C43v70Ev");}
+void  S583C4 ::v71(){vfunc_called(this, "_ZN6S583C43v71Ev");}
+void  S583C4 ::v72(){vfunc_called(this, "_ZN6S583C43v72Ev");}
+void  S583C4 ::v73(){vfunc_called(this, "_ZN6S583C43v73Ev");}
+void  S583C4 ::v74(){vfunc_called(this, "_ZN6S583C43v74Ev");}
+void  S583C4 ::v75(){vfunc_called(this, "_ZN6S583C43v75Ev");}
+void  S583C4 ::v76(){vfunc_called(this, "_ZN6S583C43v76Ev");}
+void  S583C4 ::v77(){vfunc_called(this, "_ZN6S583C43v77Ev");}
+void  S583C4 ::v78(){vfunc_called(this, "_ZN6S583C43v78Ev");}
+void  S583C4 ::v79(){vfunc_called(this, "_ZN6S583C43v79Ev");}
+void  S583C4 ::v80(){vfunc_called(this, "_ZN6S583C43v80Ev");}
+void  S583C4 ::v81(){vfunc_called(this, "_ZN6S583C43v81Ev");}
+void  S583C4 ::v82(){vfunc_called(this, "_ZN6S583C43v82Ev");}
+void  S583C4 ::v83(){vfunc_called(this, "_ZN6S583C43v83Ev");}
+void  S583C4 ::v84(){vfunc_called(this, "_ZN6S583C43v84Ev");}
+void  S583C4 ::v85(){vfunc_called(this, "_ZN6S583C43v85Ev");}
+void  S583C4 ::v86(){vfunc_called(this, "_ZN6S583C43v86Ev");}
+void  S583C4 ::v87(){vfunc_called(this, "_ZN6S583C43v87Ev");}
+void  S583C4 ::v88(){vfunc_called(this, "_ZN6S583C43v88Ev");}
+void  S583C4 ::v89(){vfunc_called(this, "_ZN6S583C43v89Ev");}
+S583C4 ::S583C4(){ note_ctor("S583C4", this);} // tgen
+
+static void Test_S583C4()
+{
+  extern Class_Descriptor cd_S583C4;
+  void *lvp;
+  {
+    ABISELECT(double,int) buf[ABISELECT(25,34)];
+    init_test(&cd_S583C4, buf);
+    S583C4 *dp, &lv = *(dp=new (buf) S583C4());
+    lvp = (void*)&lv;
+    check2(sizeof(lv), ABISELECT(192,132), "sizeof(S583C4)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S583C4)");
+    check_base_class_offset(lv, (S583C5*), 0, "S583C4");
+    check_field_offset(lv, s583c4f0, ABISELECT(96,60), "S583C4.s583c4f0");
+    check_field_offset(lv, s583c4f1, ABISELECT(104,68), "S583C4.s583c4f1");
+    check_field_offset(lv, s583c4f2, ABISELECT(112,72), "S583C4.s583c4f2");
+    check_field_offset(lv, s583c4f3, ABISELECT(120,80), "S583C4.s583c4f3");
+    check_field_offset(lv, s583c4f4, ABISELECT(136,92), "S583C4.s583c4f4");
+    check_field_offset(lv, s583c4f5, ABISELECT(152,104), "S583C4.s583c4f5");
+    check_field_offset(lv, s583c4f6, ABISELECT(160,108), "S583C4.s583c4f6");
+    set_bf_and_test(lv, s583c4f7, ABISELECT(176,120), 0, 1, 1, "S583C4");
+    set_bf_and_test(lv, s583c4f8, ABISELECT(176,120), 1, 1, 1, "S583C4");
+    set_bf_and_test(lv, s583c4f9, ABISELECT(176,120), 2, 1, 1, "S583C4");
+    set_bf_and_test(lv, s583c4f10, ABISELECT(176,120), 3, 1, 1, "S583C4");
+    set_bf_and_test(lv, s583c4f11, ABISELECT(176,120), 4, 1, 1, "S583C4");
+    check_field_offset(lv, s583c4f12, ABISELECT(180,124), "S583C4.s583c4f12");
+    test_class_info(&lv, &cd_S583C4);
+    dp->~S583C4();
+  }
+  Check_Ctor_Dtor_Calls(lvp);
+}
+static Arrange_To_Call_Me vS583C4(Test_S583C4, "S583C4", ABISELECT(192,132));
+
+#else // __cplusplus
+
+extern void _ZN6S583C4C1Ev();
+extern void _ZN6S583C4D1Ev();
+Name_Map name_map_S583C4[] = {
+  NSPAIR(_ZN6S583C4C1Ev),
+  NSPAIR(_ZN6S583C4D1Ev),
+  {0,0}
+};
+extern Class_Descriptor cd_S583C5;
+extern VTBL_ENTRY _ZTI6S583C5[];
+extern  VTBL_ENTRY _ZTV6S583C5[];
+static Base_Class bases_S583C4[] = {
+  // ofst, vfto, nneg, vtt_idx, base_vtt_idx, init_seq, direct, virtual
+  {&cd_S583C5,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    1, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {0}};
+extern VTBL_ENTRY _ZTI6S583C4[];
+extern void _ZN6S583C4D1Ev();
+extern void _ZN6S583C4D0Ev();
+extern void _ZN6S583C52v4Ev();
+extern void _ZN6S583C52v5Ev();
+extern void _ZN6S583C52v6Ev();
+extern void _ZN6S583C52v7Ev();
+extern void _ZN6S583C52v8Ev();
+extern void _ZN6S583C52v9Ev();
+extern void _ZN6S583C53v10Ev();
+extern void _ZN6S583C53v11Ev();
+extern void _ZN6S583C53v12Ev();
+extern void _ZN6S583C53v13Ev();
+extern void _ZN6S583C53v14Ev();
+extern void _ZN6S583C53v15Ev();
+extern void _ZN6S583C53v16Ev();
+extern void _ZN6S583C53v17Ev();
+extern void _ZN6S583C53v18Ev();
+extern void _ZN6S583C53v19Ev();
+extern void _ZN6S583C53v20Ev();
+extern void _ZN6S583C53v21Ev();
+extern void _ZN6S583C53v22Ev();
+extern void _ZN6S583C53v23Ev();
+extern void _ZN6S583C53v24Ev();
+extern void _ZN6S583C53v25Ev();
+extern void _ZN6S583C53v26Ev();
+extern void _ZN6S583C53v27Ev();
+extern void _ZN6S583C53v28Ev();
+extern void _ZN6S583C53v29Ev();
+extern void _ZN6S583C53v30Ev();
+extern void _ZN6S583C53v31Ev();
+extern void _ZN6S583C53v32Ev();
+extern void _ZN6S583C53v33Ev();
+extern void _ZN6S583C53v34Ev();
+extern void _ZN6S583C53v35Ev();
+extern void _ZN6S583C53v36Ev();
+extern void _ZN6S583C53v37Ev();
+extern void _ZN6S583C53v38Ev();
+extern void _ZN6S583C53v39Ev();
+extern void _ZN6S583C53v40Ev();
+extern void _ZN6S583C53v41Ev();
+extern void _ZN6S583C53v42Ev();
+extern void _ZN6S583C53v43Ev();
+extern void _ZN6S583C53v44Ev();
+extern void _ZN6S583C53v45Ev();
+extern void _ZN6S583C53v46Ev();
+extern void _ZN6S583C53v47Ev();
+extern void _ZN6S583C53v48Ev();
+extern void _ZN6S583C53v49Ev();
+extern void _ZN6S583C53v50Ev();
+extern void _ZN6S583C53v51Ev();
+extern void _ZN6S583C53v52Ev();
+extern void _ZN6S583C53v53Ev();
+extern void _ZN6S583C53v54Ev();
+extern void _ZN6S583C53v55Ev();
+extern void _ZN6S583C53v56Ev();
+extern void _ZN6S583C53v57Ev();
+extern void _ZN6S583C53v58Ev();
+extern void _ZN6S583C53v59Ev();
+extern void _ZN6S583C53v60Ev();
+extern void _ZN6S583C53v61Ev();
+extern void _ZN6S583C53v62Ev();
+extern void _ZN6S583C53v63Ev();
+extern void _ZN6S583C53v64Ev();
+extern void _ZN6S583C53v65Ev();
+extern void _ZN6S583C53v66Ev();
+extern void _ZN6S583C53v67Ev();
+extern void _ZN6S583C43v68Ev();
+extern void _ZN6S583C43v69Ev();
+extern void _ZN6S583C43v70Ev();
+extern void _ZN6S583C43v71Ev();
+extern void _ZN6S583C43v72Ev();
+extern void _ZN6S583C43v73Ev();
+extern void _ZN6S583C43v74Ev();
+extern void _ZN6S583C43v75Ev();
+extern void _ZN6S583C43v76Ev();
+extern void _ZN6S583C43v77Ev();
+extern void _ZN6S583C43v78Ev();
+extern void _ZN6S583C43v79Ev();
+extern void _ZN6S583C43v80Ev();
+extern void _ZN6S583C43v81Ev();
+extern void _ZN6S583C43v82Ev();
+extern void _ZN6S583C43v83Ev();
+extern void _ZN6S583C43v84Ev();
+extern void _ZN6S583C43v85Ev();
+extern void _ZN6S583C43v86Ev();
+extern void _ZN6S583C43v87Ev();
+extern void _ZN6S583C43v88Ev();
+extern void _ZN6S583C43v89Ev();
+static  VTBL_ENTRY vtc_S583C4[] = {
+  0,
+  (VTBL_ENTRY)&(_ZTI6S583C4[0]),
+  (VTBL_ENTRY)&_ZN6S583C4D1Ev,
+  (VTBL_ENTRY)&_ZN6S583C4D0Ev,
+  (VTBL_ENTRY)&_ZN6S583C52v4Ev,
+  (VTBL_ENTRY)&_ZN6S583C52v5Ev,
+  (VTBL_ENTRY)&_ZN6S583C52v6Ev,
+  (VTBL_ENTRY)&_ZN6S583C52v7Ev,
+  (VTBL_ENTRY)&_ZN6S583C52v8Ev,
+  (VTBL_ENTRY)&_ZN6S583C52v9Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v10Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v11Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v12Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v13Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v14Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v15Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v16Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v17Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v18Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v19Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v20Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v21Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v22Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v23Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v24Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v25Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v26Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v27Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v28Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v29Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v30Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v31Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v32Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v33Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v34Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v35Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v36Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v37Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v38Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v39Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v40Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v41Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v42Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v43Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v44Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v45Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v46Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v47Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v48Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v49Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v50Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v51Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v52Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v53Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v54Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v55Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v56Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v57Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v58Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v59Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v60Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v61Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v62Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v63Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v64Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v65Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v66Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v67Ev,
+  (VTBL_ENTRY)&_ZN6S583C43v68Ev,
+  (VTBL_ENTRY)&_ZN6S583C43v69Ev,
+  (VTBL_ENTRY)&_ZN6S583C43v70Ev,
+  (VTBL_ENTRY)&_ZN6S583C43v71Ev,
+  (VTBL_ENTRY)&_ZN6S583C43v72Ev,
+  (VTBL_ENTRY)&_ZN6S583C43v73Ev,
+  (VTBL_ENTRY)&_ZN6S583C43v74Ev,
+  (VTBL_ENTRY)&_ZN6S583C43v75Ev,
+  (VTBL_ENTRY)&_ZN6S583C43v76Ev,
+  (VTBL_ENTRY)&_ZN6S583C43v77Ev,
+  (VTBL_ENTRY)&_ZN6S583C43v78Ev,
+  (VTBL_ENTRY)&_ZN6S583C43v79Ev,
+  (VTBL_ENTRY)&_ZN6S583C43v80Ev,
+  (VTBL_ENTRY)&_ZN6S583C43v81Ev,
+  (VTBL_ENTRY)&_ZN6S583C43v82Ev,
+  (VTBL_ENTRY)&_ZN6S583C43v83Ev,
+  (VTBL_ENTRY)&_ZN6S583C43v84Ev,
+  (VTBL_ENTRY)&_ZN6S583C43v85Ev,
+  (VTBL_ENTRY)&_ZN6S583C43v86Ev,
+  (VTBL_ENTRY)&_ZN6S583C43v87Ev,
+  (VTBL_ENTRY)&_ZN6S583C43v88Ev,
+  (VTBL_ENTRY)&_ZN6S583C43v89Ev,
+};
+extern VTBL_ENTRY _ZTI6S583C4[];
+extern  VTBL_ENTRY _ZTV6S583C4[];
+Class_Descriptor cd_S583C4 = {  "S583C4", // class name
+  bases_S583C4, 1,
+  &(vtc_S583C4[0]), // expected_vtbl_contents
+  0, //no vtt
+  ABISELECT(192,132), // object size
+  NSPAIRA(_ZTI6S583C4),ABISELECT(24,12), //typeinfo_var
+  NSPAIRA(_ZTV6S583C4),90, //virtual function table var
+  2, // offset into main vftv pointed to by object[0]
+  {0,0},0, // virtual table table var
+  1, // n_initialized_bases
+  0, // has_virtual_bases
+  1, // has_class_type_fields
+  0, // alt-thunk-names
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S583C3  : S583C4 {
+  unsigned int s583c3f0:1;
+  unsigned int s583c3f1:1;
+  unsigned int s583c3f2:1;
+  ::S485C42 s583c3f3;
+  ::S485C38 s583c3f4;
+  ::S485C17 s583c3f5;
+  ::S485C13 s583c3f6;
+  int s583c3f7[3];
+  virtual  ~S583C3(); // _ZN6S583C3D1Ev
+  virtual void  v90(); // _ZN6S583C33v90Ev
+  virtual void  v91(); // _ZN6S583C33v91Ev
+  virtual void  v92(); // _ZN6S583C33v92Ev
+  virtual void  v93(); // _ZN6S583C33v93Ev
+  virtual void  v94(); // _ZN6S583C33v94Ev
+  virtual void  v95(); // _ZN6S583C33v95Ev
+  virtual void  v96(); // _ZN6S583C33v96Ev
+  virtual void  v97(); // _ZN6S583C33v97Ev
+  virtual void  v98(); // _ZN6S583C33v98Ev
+  virtual void  v99(); // _ZN6S583C33v99Ev
+  virtual void  v100(); // _ZN6S583C34v100Ev
+  virtual void  v101(); // _ZN6S583C34v101Ev
+  virtual void  v102(); // _ZN6S583C34v102Ev
+  virtual void  v103(); // _ZN6S583C34v103Ev
+  virtual void  v104(); // _ZN6S583C34v104Ev
+  virtual void  v105(); // _ZN6S583C34v105Ev
+  virtual void  v106(); // _ZN6S583C34v106Ev
+  virtual void  v107(); // _ZN6S583C34v107Ev
+  virtual void  v108(); // _ZN6S583C34v108Ev
+  virtual void  v109(); // _ZN6S583C34v109Ev
+  S583C3(); // tgen
+};
+//SIG(-1 S583C3) C1{ BC2{ BC3{ vd v21 v22 v23 v24 v25 v26 v27 v28 v29 v30 v31 v32 v33 v34 v35 v36 v37 v38 v39 v40 v41 v42 v43 v44 v45 v46 v47 v48 v49 v50 v51 v52 v53 v54 v55 v56 v57 v58 v59 v60 v61 v62 v63 v64 v65 v66 v67 v68 v69 v70 v71 v72 v73 v74 v75 v76 v77 v78 v79 v80 v81 v82 v83 v84 Fi FL Fp[4] Fi[2] Fp FC4{ m Fi[2]} Fp[2]} vd v85 v86 v87 v88 v89 v90 v91 v92 v93 v94 v95 v96 v97 v98 v99 v100 v101 v102 v103 v104 v105 v106 Fi[2] Fp Fi[2] FC5{ BC6{ BC7{ BC8{ m Fp Fi[2]}}}} FC5 FC9{ m} FC5 Fi:1 Fi:1 Fi:1 Fi:1 Fi:1 Fi[2]} vd v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 v13 v14 v15 v16 v17 v18 v19 v20 Fi:1 Fi:1 Fi:1 FC10{ BC11{ BC8}} FC6 FC12{ BC13{ BC8}} FC14{ BC15{ BC8}} Fi[3]}
+
+
+ S583C3 ::~S583C3(){ note_dtor("S583C3", this);}
+void  S583C3 ::v90(){vfunc_called(this, "_ZN6S583C33v90Ev");}
+void  S583C3 ::v91(){vfunc_called(this, "_ZN6S583C33v91Ev");}
+void  S583C3 ::v92(){vfunc_called(this, "_ZN6S583C33v92Ev");}
+void  S583C3 ::v93(){vfunc_called(this, "_ZN6S583C33v93Ev");}
+void  S583C3 ::v94(){vfunc_called(this, "_ZN6S583C33v94Ev");}
+void  S583C3 ::v95(){vfunc_called(this, "_ZN6S583C33v95Ev");}
+void  S583C3 ::v96(){vfunc_called(this, "_ZN6S583C33v96Ev");}
+void  S583C3 ::v97(){vfunc_called(this, "_ZN6S583C33v97Ev");}
+void  S583C3 ::v98(){vfunc_called(this, "_ZN6S583C33v98Ev");}
+void  S583C3 ::v99(){vfunc_called(this, "_ZN6S583C33v99Ev");}
+void  S583C3 ::v100(){vfunc_called(this, "_ZN6S583C34v100Ev");}
+void  S583C3 ::v101(){vfunc_called(this, "_ZN6S583C34v101Ev");}
+void  S583C3 ::v102(){vfunc_called(this, "_ZN6S583C34v102Ev");}
+void  S583C3 ::v103(){vfunc_called(this, "_ZN6S583C34v103Ev");}
+void  S583C3 ::v104(){vfunc_called(this, "_ZN6S583C34v104Ev");}
+void  S583C3 ::v105(){vfunc_called(this, "_ZN6S583C34v105Ev");}
+void  S583C3 ::v106(){vfunc_called(this, "_ZN6S583C34v106Ev");}
+void  S583C3 ::v107(){vfunc_called(this, "_ZN6S583C34v107Ev");}
+void  S583C3 ::v108(){vfunc_called(this, "_ZN6S583C34v108Ev");}
+void  S583C3 ::v109(){vfunc_called(this, "_ZN6S583C34v109Ev");}
+S583C3 ::S583C3(){ note_ctor("S583C3", this);} // tgen
+
+static void Test_S583C3()
+{
+  extern Class_Descriptor cd_S583C3;
+  void *lvp;
+  {
+    ABISELECT(double,int) buf[ABISELECT(35,50)];
+    init_test(&cd_S583C3, buf);
+    S583C3 *dp, &lv = *(dp=new (buf) S583C3());
+    lvp = (void*)&lv;
+    check2(sizeof(lv), ABISELECT(272,196), "sizeof(S583C3)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S583C3)");
+    check_base_class_offset(lv, (S583C5*)(S583C4*), 0, "S583C3");
+    check_base_class_offset(lv, (S583C4*), 0, "S583C3");
+    set_bf_and_test(lv, s583c3f0, ABISELECT(188,132), 0, 1, 1, "S583C3");
+    set_bf_and_test(lv, s583c3f1, ABISELECT(188,132), 1, 1, 1, "S583C3");
+    set_bf_and_test(lv, s583c3f2, ABISELECT(188,132), 2, 1, 1, "S583C3");
+    check_field_offset(lv, s583c3f3, ABISELECT(192,136), "S583C3.s583c3f3");
+    check_field_offset(lv, s583c3f4, ABISELECT(208,148), "S583C3.s583c3f4");
+    check_field_offset(lv, s583c3f5, ABISELECT(224,160), "S583C3.s583c3f5");
+    check_field_offset(lv, s583c3f6, ABISELECT(240,172), "S583C3.s583c3f6");
+    check_field_offset(lv, s583c3f7, ABISELECT(256,184), "S583C3.s583c3f7");
+    test_class_info(&lv, &cd_S583C3);
+    dp->~S583C3();
+  }
+  Check_Ctor_Dtor_Calls(lvp);
+}
+static Arrange_To_Call_Me vS583C3(Test_S583C3, "S583C3", ABISELECT(272,196));
+
+#else // __cplusplus
+
+extern void _ZN6S583C3C1Ev();
+extern void _ZN6S583C3D1Ev();
+Name_Map name_map_S583C3[] = {
+  NSPAIR(_ZN6S583C3C1Ev),
+  NSPAIR(_ZN6S583C3D1Ev),
+  {0,0}
+};
+extern Class_Descriptor cd_S583C5;
+extern VTBL_ENTRY _ZTI6S583C5[];
+extern  VTBL_ENTRY _ZTV6S583C5[];
+extern Class_Descriptor cd_S583C4;
+extern VTBL_ENTRY _ZTI6S583C4[];
+extern  VTBL_ENTRY _ZTV6S583C4[];
+static Base_Class bases_S583C3[] = {
+  // ofst, vfto, nneg, vtt_idx, base_vtt_idx, init_seq, direct, virtual
+  {&cd_S583C5,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    1, //init_seq
+    1, //immediately_derived
+  0, 0},
+  {&cd_S583C4,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    2, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {0}};
+extern VTBL_ENTRY _ZTI6S583C3[];
+extern void _ZN6S583C3D1Ev();
+extern void _ZN6S583C3D0Ev();
+extern void _ZN6S583C52v4Ev();
+extern void _ZN6S583C52v5Ev();
+extern void _ZN6S583C52v6Ev();
+extern void _ZN6S583C52v7Ev();
+extern void _ZN6S583C52v8Ev();
+extern void _ZN6S583C52v9Ev();
+extern void _ZN6S583C53v10Ev();
+extern void _ZN6S583C53v11Ev();
+extern void _ZN6S583C53v12Ev();
+extern void _ZN6S583C53v13Ev();
+extern void _ZN6S583C53v14Ev();
+extern void _ZN6S583C53v15Ev();
+extern void _ZN6S583C53v16Ev();
+extern void _ZN6S583C53v17Ev();
+extern void _ZN6S583C53v18Ev();
+extern void _ZN6S583C53v19Ev();
+extern void _ZN6S583C53v20Ev();
+extern void _ZN6S583C53v21Ev();
+extern void _ZN6S583C53v22Ev();
+extern void _ZN6S583C53v23Ev();
+extern void _ZN6S583C53v24Ev();
+extern void _ZN6S583C53v25Ev();
+extern void _ZN6S583C53v26Ev();
+extern void _ZN6S583C53v27Ev();
+extern void _ZN6S583C53v28Ev();
+extern void _ZN6S583C53v29Ev();
+extern void _ZN6S583C53v30Ev();
+extern void _ZN6S583C53v31Ev();
+extern void _ZN6S583C53v32Ev();
+extern void _ZN6S583C53v33Ev();
+extern void _ZN6S583C53v34Ev();
+extern void _ZN6S583C53v35Ev();
+extern void _ZN6S583C53v36Ev();
+extern void _ZN6S583C53v37Ev();
+extern void _ZN6S583C53v38Ev();
+extern void _ZN6S583C53v39Ev();
+extern void _ZN6S583C53v40Ev();
+extern void _ZN6S583C53v41Ev();
+extern void _ZN6S583C53v42Ev();
+extern void _ZN6S583C53v43Ev();
+extern void _ZN6S583C53v44Ev();
+extern void _ZN6S583C53v45Ev();
+extern void _ZN6S583C53v46Ev();
+extern void _ZN6S583C53v47Ev();
+extern void _ZN6S583C53v48Ev();
+extern void _ZN6S583C53v49Ev();
+extern void _ZN6S583C53v50Ev();
+extern void _ZN6S583C53v51Ev();
+extern void _ZN6S583C53v52Ev();
+extern void _ZN6S583C53v53Ev();
+extern void _ZN6S583C53v54Ev();
+extern void _ZN6S583C53v55Ev();
+extern void _ZN6S583C53v56Ev();
+extern void _ZN6S583C53v57Ev();
+extern void _ZN6S583C53v58Ev();
+extern void _ZN6S583C53v59Ev();
+extern void _ZN6S583C53v60Ev();
+extern void _ZN6S583C53v61Ev();
+extern void _ZN6S583C53v62Ev();
+extern void _ZN6S583C53v63Ev();
+extern void _ZN6S583C53v64Ev();
+extern void _ZN6S583C53v65Ev();
+extern void _ZN6S583C53v66Ev();
+extern void _ZN6S583C53v67Ev();
+extern void _ZN6S583C43v68Ev();
+extern void _ZN6S583C43v69Ev();
+extern void _ZN6S583C43v70Ev();
+extern void _ZN6S583C43v71Ev();
+extern void _ZN6S583C43v72Ev();
+extern void _ZN6S583C43v73Ev();
+extern void _ZN6S583C43v74Ev();
+extern void _ZN6S583C43v75Ev();
+extern void _ZN6S583C43v76Ev();
+extern void _ZN6S583C43v77Ev();
+extern void _ZN6S583C43v78Ev();
+extern void _ZN6S583C43v79Ev();
+extern void _ZN6S583C43v80Ev();
+extern void _ZN6S583C43v81Ev();
+extern void _ZN6S583C43v82Ev();
+extern void _ZN6S583C43v83Ev();
+extern void _ZN6S583C43v84Ev();
+extern void _ZN6S583C43v85Ev();
+extern void _ZN6S583C43v86Ev();
+extern void _ZN6S583C43v87Ev();
+extern void _ZN6S583C43v88Ev();
+extern void _ZN6S583C43v89Ev();
+extern void _ZN6S583C33v90Ev();
+extern void _ZN6S583C33v91Ev();
+extern void _ZN6S583C33v92Ev();
+extern void _ZN6S583C33v93Ev();
+extern void _ZN6S583C33v94Ev();
+extern void _ZN6S583C33v95Ev();
+extern void _ZN6S583C33v96Ev();
+extern void _ZN6S583C33v97Ev();
+extern void _ZN6S583C33v98Ev();
+extern void _ZN6S583C33v99Ev();
+extern void _ZN6S583C34v100Ev();
+extern void _ZN6S583C34v101Ev();
+extern void _ZN6S583C34v102Ev();
+extern void _ZN6S583C34v103Ev();
+extern void _ZN6S583C34v104Ev();
+extern void _ZN6S583C34v105Ev();
+extern void _ZN6S583C34v106Ev();
+extern void _ZN6S583C34v107Ev();
+extern void _ZN6S583C34v108Ev();
+extern void _ZN6S583C34v109Ev();
+static  VTBL_ENTRY vtc_S583C3[] = {
+  0,
+  (VTBL_ENTRY)&(_ZTI6S583C3[0]),
+  (VTBL_ENTRY)&_ZN6S583C3D1Ev,
+  (VTBL_ENTRY)&_ZN6S583C3D0Ev,
+  (VTBL_ENTRY)&_ZN6S583C52v4Ev,
+  (VTBL_ENTRY)&_ZN6S583C52v5Ev,
+  (VTBL_ENTRY)&_ZN6S583C52v6Ev,
+  (VTBL_ENTRY)&_ZN6S583C52v7Ev,
+  (VTBL_ENTRY)&_ZN6S583C52v8Ev,
+  (VTBL_ENTRY)&_ZN6S583C52v9Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v10Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v11Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v12Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v13Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v14Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v15Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v16Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v17Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v18Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v19Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v20Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v21Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v22Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v23Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v24Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v25Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v26Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v27Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v28Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v29Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v30Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v31Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v32Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v33Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v34Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v35Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v36Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v37Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v38Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v39Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v40Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v41Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v42Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v43Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v44Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v45Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v46Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v47Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v48Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v49Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v50Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v51Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v52Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v53Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v54Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v55Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v56Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v57Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v58Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v59Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v60Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v61Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v62Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v63Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v64Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v65Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v66Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v67Ev,
+  (VTBL_ENTRY)&_ZN6S583C43v68Ev,
+  (VTBL_ENTRY)&_ZN6S583C43v69Ev,
+  (VTBL_ENTRY)&_ZN6S583C43v70Ev,
+  (VTBL_ENTRY)&_ZN6S583C43v71Ev,
+  (VTBL_ENTRY)&_ZN6S583C43v72Ev,
+  (VTBL_ENTRY)&_ZN6S583C43v73Ev,
+  (VTBL_ENTRY)&_ZN6S583C43v74Ev,
+  (VTBL_ENTRY)&_ZN6S583C43v75Ev,
+  (VTBL_ENTRY)&_ZN6S583C43v76Ev,
+  (VTBL_ENTRY)&_ZN6S583C43v77Ev,
+  (VTBL_ENTRY)&_ZN6S583C43v78Ev,
+  (VTBL_ENTRY)&_ZN6S583C43v79Ev,
+  (VTBL_ENTRY)&_ZN6S583C43v80Ev,
+  (VTBL_ENTRY)&_ZN6S583C43v81Ev,
+  (VTBL_ENTRY)&_ZN6S583C43v82Ev,
+  (VTBL_ENTRY)&_ZN6S583C43v83Ev,
+  (VTBL_ENTRY)&_ZN6S583C43v84Ev,
+  (VTBL_ENTRY)&_ZN6S583C43v85Ev,
+  (VTBL_ENTRY)&_ZN6S583C43v86Ev,
+  (VTBL_ENTRY)&_ZN6S583C43v87Ev,
+  (VTBL_ENTRY)&_ZN6S583C43v88Ev,
+  (VTBL_ENTRY)&_ZN6S583C43v89Ev,
+  (VTBL_ENTRY)&_ZN6S583C33v90Ev,
+  (VTBL_ENTRY)&_ZN6S583C33v91Ev,
+  (VTBL_ENTRY)&_ZN6S583C33v92Ev,
+  (VTBL_ENTRY)&_ZN6S583C33v93Ev,
+  (VTBL_ENTRY)&_ZN6S583C33v94Ev,
+  (VTBL_ENTRY)&_ZN6S583C33v95Ev,
+  (VTBL_ENTRY)&_ZN6S583C33v96Ev,
+  (VTBL_ENTRY)&_ZN6S583C33v97Ev,
+  (VTBL_ENTRY)&_ZN6S583C33v98Ev,
+  (VTBL_ENTRY)&_ZN6S583C33v99Ev,
+  (VTBL_ENTRY)&_ZN6S583C34v100Ev,
+  (VTBL_ENTRY)&_ZN6S583C34v101Ev,
+  (VTBL_ENTRY)&_ZN6S583C34v102Ev,
+  (VTBL_ENTRY)&_ZN6S583C34v103Ev,
+  (VTBL_ENTRY)&_ZN6S583C34v104Ev,
+  (VTBL_ENTRY)&_ZN6S583C34v105Ev,
+  (VTBL_ENTRY)&_ZN6S583C34v106Ev,
+  (VTBL_ENTRY)&_ZN6S583C34v107Ev,
+  (VTBL_ENTRY)&_ZN6S583C34v108Ev,
+  (VTBL_ENTRY)&_ZN6S583C34v109Ev,
+};
+extern VTBL_ENTRY _ZTI6S583C3[];
+extern  VTBL_ENTRY _ZTV6S583C3[];
+Class_Descriptor cd_S583C3 = {  "S583C3", // class name
+  bases_S583C3, 2,
+  &(vtc_S583C3[0]), // expected_vtbl_contents
+  0, //no vtt
+  ABISELECT(272,196), // object size
+  NSPAIRA(_ZTI6S583C3),ABISELECT(24,12), //typeinfo_var
+  NSPAIRA(_ZTV6S583C3),110, //virtual function table var
+  2, // offset into main vftv pointed to by object[0]
+  {0,0},0, // virtual table table var
+  2, // n_initialized_bases
+  0, // has_virtual_bases
+  1, // has_class_type_fields
+  0, // alt-thunk-names
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S583C2_nt  : S583C3 {
+  ::S485C6_nt s583c2f0;
+  unsigned int s583c2f1:1;
+  ::S485C8_nt s583c2f2;
+  virtual  ~S583C2_nt(); // _ZN9S583C2_ntD1Ev
+  virtual void  v110(); // _ZN9S583C2_nt4v110Ev
+  virtual void  v111(); // _ZN9S583C2_nt4v111Ev
+  virtual void  v112(); // _ZN9S583C2_nt4v112Ev
+  virtual void  v113(); // _ZN9S583C2_nt4v113Ev
+  S583C2_nt(); // tgen
+};
+//SIG(-1 S583C2_nt) C1{ BC2{ BC3{ BC4{ vd v5 v6 v7 v8 v9 v10 v11 v12 v13 v14 v15 v16 v17 v18 v19 v20 v21 v22 v23 v24 v25 v26 v27 v28 v29 v30 v31 v32 v33 v34 v35 v36 v37 v38 v39 v40 v41 v42 v43 v44 v45 v46 v47 v48 v49 v50 v51 v52 v53 v54 v55 v56 v57 v58 v59 v60 v61 v62 v63 v64 v65 v66 v67 v68 Fi FL Fp[4] Fi[2] Fp FC5{ m Fi[2]} Fp[2]} vd v69 v70 v71 v72 v73 v74 v75 v76 v77 v78 v79 v80 v81 v82 v83 v84 v85 v86 v87 v88 v89 v90 Fi[2] Fp Fi[2] FC6{ BC7{ BC8{ BC9{ m Fp Fi[2]}}}} FC6 FC10{ m} FC6 Fi:1 Fi:1 Fi:1 Fi:1 Fi:1 Fi[2]} vd v91 v92 v93 v94 v95 v96 v97 v98 v99 v100 v101 v102 v103 v104 v105 v106 v107 v108 v109 v110 Fi:1 Fi:1 Fi:1 FC11{ BC12{ BC9}} FC7 FC13{ BC14{ BC9}} FC15{ BC16{ BC9}} Fi[3]} vd v1 v2 v3 v4 FC5 Fi:1 FC17{ BC18{ BC9}}}
+
+
+ S583C2_nt ::~S583C2_nt(){ note_dtor("S583C2_nt", this);}
+void  S583C2_nt ::v110(){vfunc_called(this, "_ZN9S583C2_nt4v110Ev");}
+void  S583C2_nt ::v111(){vfunc_called(this, "_ZN9S583C2_nt4v111Ev");}
+void  S583C2_nt ::v112(){vfunc_called(this, "_ZN9S583C2_nt4v112Ev");}
+void  S583C2_nt ::v113(){vfunc_called(this, "_ZN9S583C2_nt4v113Ev");}
+S583C2_nt ::S583C2_nt(){ note_ctor("S583C2_nt", this);} // tgen
+
+//skip512 S583C2_nt
+
+#else // __cplusplus
+
+extern void _ZN9S583C2_ntC1Ev();
+extern void _ZN9S583C2_ntD1Ev();
+Name_Map name_map_S583C2_nt[] = {
+  NSPAIR(_ZN9S583C2_ntC1Ev),
+  NSPAIR(_ZN9S583C2_ntD1Ev),
+  {0,0}
+};
+extern Class_Descriptor cd_S583C5;
+extern VTBL_ENTRY _ZTI6S583C5[];
+extern  VTBL_ENTRY _ZTV6S583C5[];
+extern Class_Descriptor cd_S583C4;
+extern VTBL_ENTRY _ZTI6S583C4[];
+extern  VTBL_ENTRY _ZTV6S583C4[];
+extern Class_Descriptor cd_S583C3;
+extern VTBL_ENTRY _ZTI6S583C3[];
+extern  VTBL_ENTRY _ZTV6S583C3[];
+static Base_Class bases_S583C2_nt[] = {
+  // ofst, vfto, nneg, vtt_idx, base_vtt_idx, init_seq, direct, virtual
+  {&cd_S583C5,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    1, //init_seq
+    1, //immediately_derived
+  0, 0},
+  {&cd_S583C4,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    2, //init_seq
+    2, //immediately_derived
+  0, 0},
+  {&cd_S583C3,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    3, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {0}};
+extern VTBL_ENTRY _ZTI9S583C2_nt[];
+extern void _ZN9S583C2_ntD1Ev();
+extern void _ZN9S583C2_ntD0Ev();
+extern void _ZN6S583C52v4Ev();
+extern void _ZN6S583C52v5Ev();
+extern void _ZN6S583C52v6Ev();
+extern void _ZN6S583C52v7Ev();
+extern void _ZN6S583C52v8Ev();
+extern void _ZN6S583C52v9Ev();
+extern void _ZN6S583C53v10Ev();
+extern void _ZN6S583C53v11Ev();
+extern void _ZN6S583C53v12Ev();
+extern void _ZN6S583C53v13Ev();
+extern void _ZN6S583C53v14Ev();
+extern void _ZN6S583C53v15Ev();
+extern void _ZN6S583C53v16Ev();
+extern void _ZN6S583C53v17Ev();
+extern void _ZN6S583C53v18Ev();
+extern void _ZN6S583C53v19Ev();
+extern void _ZN6S583C53v20Ev();
+extern void _ZN6S583C53v21Ev();
+extern void _ZN6S583C53v22Ev();
+extern void _ZN6S583C53v23Ev();
+extern void _ZN6S583C53v24Ev();
+extern void _ZN6S583C53v25Ev();
+extern void _ZN6S583C53v26Ev();
+extern void _ZN6S583C53v27Ev();
+extern void _ZN6S583C53v28Ev();
+extern void _ZN6S583C53v29Ev();
+extern void _ZN6S583C53v30Ev();
+extern void _ZN6S583C53v31Ev();
+extern void _ZN6S583C53v32Ev();
+extern void _ZN6S583C53v33Ev();
+extern void _ZN6S583C53v34Ev();
+extern void _ZN6S583C53v35Ev();
+extern void _ZN6S583C53v36Ev();
+extern void _ZN6S583C53v37Ev();
+extern void _ZN6S583C53v38Ev();
+extern void _ZN6S583C53v39Ev();
+extern void _ZN6S583C53v40Ev();
+extern void _ZN6S583C53v41Ev();
+extern void _ZN6S583C53v42Ev();
+extern void _ZN6S583C53v43Ev();
+extern void _ZN6S583C53v44Ev();
+extern void _ZN6S583C53v45Ev();
+extern void _ZN6S583C53v46Ev();
+extern void _ZN6S583C53v47Ev();
+extern void _ZN6S583C53v48Ev();
+extern void _ZN6S583C53v49Ev();
+extern void _ZN6S583C53v50Ev();
+extern void _ZN6S583C53v51Ev();
+extern void _ZN6S583C53v52Ev();
+extern void _ZN6S583C53v53Ev();
+extern void _ZN6S583C53v54Ev();
+extern void _ZN6S583C53v55Ev();
+extern void _ZN6S583C53v56Ev();
+extern void _ZN6S583C53v57Ev();
+extern void _ZN6S583C53v58Ev();
+extern void _ZN6S583C53v59Ev();
+extern void _ZN6S583C53v60Ev();
+extern void _ZN6S583C53v61Ev();
+extern void _ZN6S583C53v62Ev();
+extern void _ZN6S583C53v63Ev();
+extern void _ZN6S583C53v64Ev();
+extern void _ZN6S583C53v65Ev();
+extern void _ZN6S583C53v66Ev();
+extern void _ZN6S583C53v67Ev();
+extern void _ZN6S583C43v68Ev();
+extern void _ZN6S583C43v69Ev();
+extern void _ZN6S583C43v70Ev();
+extern void _ZN6S583C43v71Ev();
+extern void _ZN6S583C43v72Ev();
+extern void _ZN6S583C43v73Ev();
+extern void _ZN6S583C43v74Ev();
+extern void _ZN6S583C43v75Ev();
+extern void _ZN6S583C43v76Ev();
+extern void _ZN6S583C43v77Ev();
+extern void _ZN6S583C43v78Ev();
+extern void _ZN6S583C43v79Ev();
+extern void _ZN6S583C43v80Ev();
+extern void _ZN6S583C43v81Ev();
+extern void _ZN6S583C43v82Ev();
+extern void _ZN6S583C43v83Ev();
+extern void _ZN6S583C43v84Ev();
+extern void _ZN6S583C43v85Ev();
+extern void _ZN6S583C43v86Ev();
+extern void _ZN6S583C43v87Ev();
+extern void _ZN6S583C43v88Ev();
+extern void _ZN6S583C43v89Ev();
+extern void _ZN6S583C33v90Ev();
+extern void _ZN6S583C33v91Ev();
+extern void _ZN6S583C33v92Ev();
+extern void _ZN6S583C33v93Ev();
+extern void _ZN6S583C33v94Ev();
+extern void _ZN6S583C33v95Ev();
+extern void _ZN6S583C33v96Ev();
+extern void _ZN6S583C33v97Ev();
+extern void _ZN6S583C33v98Ev();
+extern void _ZN6S583C33v99Ev();
+extern void _ZN6S583C34v100Ev();
+extern void _ZN6S583C34v101Ev();
+extern void _ZN6S583C34v102Ev();
+extern void _ZN6S583C34v103Ev();
+extern void _ZN6S583C34v104Ev();
+extern void _ZN6S583C34v105Ev();
+extern void _ZN6S583C34v106Ev();
+extern void _ZN6S583C34v107Ev();
+extern void _ZN6S583C34v108Ev();
+extern void _ZN6S583C34v109Ev();
+extern void _ZN9S583C2_nt4v110Ev();
+extern void _ZN9S583C2_nt4v111Ev();
+extern void _ZN9S583C2_nt4v112Ev();
+extern void _ZN9S583C2_nt4v113Ev();
+static  VTBL_ENTRY vtc_S583C2_nt[] = {
+  0,
+  (VTBL_ENTRY)&(_ZTI9S583C2_nt[0]),
+  (VTBL_ENTRY)&_ZN9S583C2_ntD1Ev,
+  (VTBL_ENTRY)&_ZN9S583C2_ntD0Ev,
+  (VTBL_ENTRY)&_ZN6S583C52v4Ev,
+  (VTBL_ENTRY)&_ZN6S583C52v5Ev,
+  (VTBL_ENTRY)&_ZN6S583C52v6Ev,
+  (VTBL_ENTRY)&_ZN6S583C52v7Ev,
+  (VTBL_ENTRY)&_ZN6S583C52v8Ev,
+  (VTBL_ENTRY)&_ZN6S583C52v9Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v10Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v11Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v12Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v13Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v14Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v15Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v16Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v17Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v18Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v19Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v20Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v21Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v22Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v23Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v24Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v25Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v26Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v27Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v28Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v29Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v30Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v31Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v32Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v33Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v34Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v35Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v36Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v37Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v38Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v39Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v40Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v41Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v42Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v43Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v44Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v45Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v46Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v47Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v48Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v49Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v50Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v51Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v52Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v53Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v54Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v55Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v56Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v57Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v58Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v59Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v60Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v61Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v62Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v63Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v64Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v65Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v66Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v67Ev,
+  (VTBL_ENTRY)&_ZN6S583C43v68Ev,
+  (VTBL_ENTRY)&_ZN6S583C43v69Ev,
+  (VTBL_ENTRY)&_ZN6S583C43v70Ev,
+  (VTBL_ENTRY)&_ZN6S583C43v71Ev,
+  (VTBL_ENTRY)&_ZN6S583C43v72Ev,
+  (VTBL_ENTRY)&_ZN6S583C43v73Ev,
+  (VTBL_ENTRY)&_ZN6S583C43v74Ev,
+  (VTBL_ENTRY)&_ZN6S583C43v75Ev,
+  (VTBL_ENTRY)&_ZN6S583C43v76Ev,
+  (VTBL_ENTRY)&_ZN6S583C43v77Ev,
+  (VTBL_ENTRY)&_ZN6S583C43v78Ev,
+  (VTBL_ENTRY)&_ZN6S583C43v79Ev,
+  (VTBL_ENTRY)&_ZN6S583C43v80Ev,
+  (VTBL_ENTRY)&_ZN6S583C43v81Ev,
+  (VTBL_ENTRY)&_ZN6S583C43v82Ev,
+  (VTBL_ENTRY)&_ZN6S583C43v83Ev,
+  (VTBL_ENTRY)&_ZN6S583C43v84Ev,
+  (VTBL_ENTRY)&_ZN6S583C43v85Ev,
+  (VTBL_ENTRY)&_ZN6S583C43v86Ev,
+  (VTBL_ENTRY)&_ZN6S583C43v87Ev,
+  (VTBL_ENTRY)&_ZN6S583C43v88Ev,
+  (VTBL_ENTRY)&_ZN6S583C43v89Ev,
+  (VTBL_ENTRY)&_ZN6S583C33v90Ev,
+  (VTBL_ENTRY)&_ZN6S583C33v91Ev,
+  (VTBL_ENTRY)&_ZN6S583C33v92Ev,
+  (VTBL_ENTRY)&_ZN6S583C33v93Ev,
+  (VTBL_ENTRY)&_ZN6S583C33v94Ev,
+  (VTBL_ENTRY)&_ZN6S583C33v95Ev,
+  (VTBL_ENTRY)&_ZN6S583C33v96Ev,
+  (VTBL_ENTRY)&_ZN6S583C33v97Ev,
+  (VTBL_ENTRY)&_ZN6S583C33v98Ev,
+  (VTBL_ENTRY)&_ZN6S583C33v99Ev,
+  (VTBL_ENTRY)&_ZN6S583C34v100Ev,
+  (VTBL_ENTRY)&_ZN6S583C34v101Ev,
+  (VTBL_ENTRY)&_ZN6S583C34v102Ev,
+  (VTBL_ENTRY)&_ZN6S583C34v103Ev,
+  (VTBL_ENTRY)&_ZN6S583C34v104Ev,
+  (VTBL_ENTRY)&_ZN6S583C34v105Ev,
+  (VTBL_ENTRY)&_ZN6S583C34v106Ev,
+  (VTBL_ENTRY)&_ZN6S583C34v107Ev,
+  (VTBL_ENTRY)&_ZN6S583C34v108Ev,
+  (VTBL_ENTRY)&_ZN6S583C34v109Ev,
+  (VTBL_ENTRY)&_ZN9S583C2_nt4v110Ev,
+  (VTBL_ENTRY)&_ZN9S583C2_nt4v111Ev,
+  (VTBL_ENTRY)&_ZN9S583C2_nt4v112Ev,
+  (VTBL_ENTRY)&_ZN9S583C2_nt4v113Ev,
+};
+extern VTBL_ENTRY _ZTI9S583C2_nt[];
+VTBL_ENTRY *P__ZTI9S583C2_nt = _ZTI9S583C2_nt; 
+extern  VTBL_ENTRY _ZTV9S583C2_nt[];
+Class_Descriptor cd_S583C2_nt = {  "S583C2_nt", // class name
+  bases_S583C2_nt, 3,
+  &(vtc_S583C2_nt[0]), // expected_vtbl_contents
+  0, //no vtt
+  ABISELECT(296,220), // object size
+  NSPAIRA(_ZTI9S583C2_nt),ABISELECT(24,12), //typeinfo_var
+  NSPAIRA(_ZTV9S583C2_nt),114, //virtual function table var
+  2, // offset into main vftv pointed to by object[0]
+  {0,0},0, // virtual table table var
+  3, // n_initialized_bases
+  0, // has_virtual_bases
+  1, // has_class_type_fields
+  0, // alt-thunk-names
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S583C1  : S583C2_nt {
+  void *s583c1f0;
+  ::S485C6_nt s583c1f1;
+  virtual  ~S583C1(); // _ZN6S583C1D1Ev
+  virtual void  v1(); // _ZN6S583C12v1Ev
+  virtual void  v2(); // _ZN6S583C12v2Ev
+  virtual void  v3(); // _ZN6S583C12v3Ev
+  S583C1(); // tgen
+};
+//SIG(1 S583C1) C1{ BC2{ BC3{ BC4{ BC5{ vd v4 v5 v6 v7 v8 v9 v10 v11 v12 v13 v14 v15 v16 v17 v18 v19 v20 v21 v22 v23 v24 v25 v26 v27 v28 v29 v30 v31 v32 v33 v34 v35 v36 v37 v38 v39 v40 v41 v42 v43 v44 v45 v46 v47 v48 v49 v50 v51 v52 v53 v54 v55 v56 v57 v58 v59 v60 v61 v62 v63 v64 v65 v66 v67 Fi FL Fp[4] Fi[2] Fp FC6{ m Fi[2]} Fp[2]} vd v68 v69 v70 v71 v72 v73 v74 v75 v76 v77 v78 v79 v80 v81 v82 v83 v84 v85 v86 v87 v88 v89 Fi[2] Fp Fi[2] FC7{ BC8{ BC9{ BC10{ m Fp Fi[2]}}}} FC7 FC11{ m} FC7 Fi:1 Fi:1 Fi:1 Fi:1 Fi:1 Fi[2]} vd v90 v91 v92 v93 v94 v95 v96 v97 v98 v99 v100 v101 v102 v103 v104 v105 v106 v107 v108 v109 Fi:1 Fi:1 Fi:1 FC12{ BC13{ BC10}} FC8 FC14{ BC15{ BC10}} FC16{ BC17{ BC10}} Fi[3]} vd v110 v111 v112 v113 FC6 Fi:1 FC18{ BC19{ BC10}}} vd v1 v2 v3 Fp FC6}
+
+
+ S583C1 ::~S583C1(){ note_dtor("S583C1", this);}
+void  S583C1 ::v1(){vfunc_called(this, "_ZN6S583C12v1Ev");}
+void  S583C1 ::v2(){vfunc_called(this, "_ZN6S583C12v2Ev");}
+void  S583C1 ::v3(){vfunc_called(this, "_ZN6S583C12v3Ev");}
+S583C1 ::S583C1(){ note_ctor("S583C1", this);} // tgen
+
+static void Test_S583C1()
+{
+  extern Class_Descriptor cd_S583C1;
+  void *lvp;
+  {
+    ABISELECT(double,int) buf[ABISELECT(40,59)];
+    init_test(&cd_S583C1, buf);
+    S583C1 *dp, &lv = *(dp=new (buf) S583C1());
+    lvp = (void*)&lv;
+    check2(sizeof(lv), ABISELECT(312,232), "sizeof(S583C1)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S583C1)");
+    check_base_class_offset(lv, (S583C5*)(S583C4*)(S583C3*)(S583C2_nt*), 0, "S583C1");
+    check_base_class_offset(lv, (S583C4*)(S583C3*)(S583C2_nt*), 0, "S583C1");
+    check_base_class_offset(lv, (S583C3*)(S583C2_nt*), 0, "S583C1");
+    check_base_class_offset(lv, (S583C2_nt*), 0, "S583C1");
+    check_field_offset(lv, s583c1f0, ABISELECT(296,220), "S583C1.s583c1f0");
+    check_field_offset(lv, s583c1f1, ABISELECT(304,224), "S583C1.s583c1f1");
+    test_class_info(&lv, &cd_S583C1);
+    dp->~S583C1();
+  }
+  Check_Ctor_Dtor_Calls(lvp);
+}
+static Arrange_To_Call_Me vS583C1(Test_S583C1, "S583C1", ABISELECT(312,232));
+
+#else // __cplusplus
+
+extern void _ZN6S583C1C1Ev();
+extern void _ZN6S583C1D1Ev();
+Name_Map name_map_S583C1[] = {
+  NSPAIR(_ZN6S583C1C1Ev),
+  NSPAIR(_ZN6S583C1D1Ev),
+  {0,0}
+};
+extern Class_Descriptor cd_S583C5;
+extern VTBL_ENTRY _ZTI6S583C5[];
+extern  VTBL_ENTRY _ZTV6S583C5[];
+extern Class_Descriptor cd_S583C4;
+extern VTBL_ENTRY _ZTI6S583C4[];
+extern  VTBL_ENTRY _ZTV6S583C4[];
+extern Class_Descriptor cd_S583C3;
+extern VTBL_ENTRY _ZTI6S583C3[];
+extern  VTBL_ENTRY _ZTV6S583C3[];
+extern Class_Descriptor cd_S583C2_nt;
+extern VTBL_ENTRY _ZTI9S583C2_nt[];
+extern  VTBL_ENTRY _ZTV9S583C2_nt[];
+static Base_Class bases_S583C1[] = {
+  // ofst, vfto, nneg, vtt_idx, base_vtt_idx, init_seq, direct, virtual
+  {&cd_S583C5,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    1, //init_seq
+    1, //immediately_derived
+  0, 0},
+  {&cd_S583C4,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    2, //init_seq
+    2, //immediately_derived
+  0, 0},
+  {&cd_S583C3,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    3, //init_seq
+    3, //immediately_derived
+  0, 0},
+  {&cd_S583C2_nt,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    4, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {0}};
+extern VTBL_ENTRY _ZTI6S583C1[];
+extern void _ZN6S583C1D1Ev();
+extern void _ZN6S583C1D0Ev();
+extern void _ZN6S583C52v4Ev();
+extern void _ZN6S583C52v5Ev();
+extern void _ZN6S583C52v6Ev();
+extern void _ZN6S583C52v7Ev();
+extern void _ZN6S583C52v8Ev();
+extern void _ZN6S583C52v9Ev();
+extern void _ZN6S583C53v10Ev();
+extern void _ZN6S583C53v11Ev();
+extern void _ZN6S583C53v12Ev();
+extern void _ZN6S583C53v13Ev();
+extern void _ZN6S583C53v14Ev();
+extern void _ZN6S583C53v15Ev();
+extern void _ZN6S583C53v16Ev();
+extern void _ZN6S583C53v17Ev();
+extern void _ZN6S583C53v18Ev();
+extern void _ZN6S583C53v19Ev();
+extern void _ZN6S583C53v20Ev();
+extern void _ZN6S583C53v21Ev();
+extern void _ZN6S583C53v22Ev();
+extern void _ZN6S583C53v23Ev();
+extern void _ZN6S583C53v24Ev();
+extern void _ZN6S583C53v25Ev();
+extern void _ZN6S583C53v26Ev();
+extern void _ZN6S583C53v27Ev();
+extern void _ZN6S583C53v28Ev();
+extern void _ZN6S583C53v29Ev();
+extern void _ZN6S583C53v30Ev();
+extern void _ZN6S583C53v31Ev();
+extern void _ZN6S583C53v32Ev();
+extern void _ZN6S583C53v33Ev();
+extern void _ZN6S583C53v34Ev();
+extern void _ZN6S583C53v35Ev();
+extern void _ZN6S583C53v36Ev();
+extern void _ZN6S583C53v37Ev();
+extern void _ZN6S583C53v38Ev();
+extern void _ZN6S583C53v39Ev();
+extern void _ZN6S583C53v40Ev();
+extern void _ZN6S583C53v41Ev();
+extern void _ZN6S583C53v42Ev();
+extern void _ZN6S583C53v43Ev();
+extern void _ZN6S583C53v44Ev();
+extern void _ZN6S583C53v45Ev();
+extern void _ZN6S583C53v46Ev();
+extern void _ZN6S583C53v47Ev();
+extern void _ZN6S583C53v48Ev();
+extern void _ZN6S583C53v49Ev();
+extern void _ZN6S583C53v50Ev();
+extern void _ZN6S583C53v51Ev();
+extern void _ZN6S583C53v52Ev();
+extern void _ZN6S583C53v53Ev();
+extern void _ZN6S583C53v54Ev();
+extern void _ZN6S583C53v55Ev();
+extern void _ZN6S583C53v56Ev();
+extern void _ZN6S583C53v57Ev();
+extern void _ZN6S583C53v58Ev();
+extern void _ZN6S583C53v59Ev();
+extern void _ZN6S583C53v60Ev();
+extern void _ZN6S583C53v61Ev();
+extern void _ZN6S583C53v62Ev();
+extern void _ZN6S583C53v63Ev();
+extern void _ZN6S583C53v64Ev();
+extern void _ZN6S583C53v65Ev();
+extern void _ZN6S583C53v66Ev();
+extern void _ZN6S583C53v67Ev();
+extern void _ZN6S583C43v68Ev();
+extern void _ZN6S583C43v69Ev();
+extern void _ZN6S583C43v70Ev();
+extern void _ZN6S583C43v71Ev();
+extern void _ZN6S583C43v72Ev();
+extern void _ZN6S583C43v73Ev();
+extern void _ZN6S583C43v74Ev();
+extern void _ZN6S583C43v75Ev();
+extern void _ZN6S583C43v76Ev();
+extern void _ZN6S583C43v77Ev();
+extern void _ZN6S583C43v78Ev();
+extern void _ZN6S583C43v79Ev();
+extern void _ZN6S583C43v80Ev();
+extern void _ZN6S583C43v81Ev();
+extern void _ZN6S583C43v82Ev();
+extern void _ZN6S583C43v83Ev();
+extern void _ZN6S583C43v84Ev();
+extern void _ZN6S583C43v85Ev();
+extern void _ZN6S583C43v86Ev();
+extern void _ZN6S583C43v87Ev();
+extern void _ZN6S583C43v88Ev();
+extern void _ZN6S583C43v89Ev();
+extern void _ZN6S583C33v90Ev();
+extern void _ZN6S583C33v91Ev();
+extern void _ZN6S583C33v92Ev();
+extern void _ZN6S583C33v93Ev();
+extern void _ZN6S583C33v94Ev();
+extern void _ZN6S583C33v95Ev();
+extern void _ZN6S583C33v96Ev();
+extern void _ZN6S583C33v97Ev();
+extern void _ZN6S583C33v98Ev();
+extern void _ZN6S583C33v99Ev();
+extern void _ZN6S583C34v100Ev();
+extern void _ZN6S583C34v101Ev();
+extern void _ZN6S583C34v102Ev();
+extern void _ZN6S583C34v103Ev();
+extern void _ZN6S583C34v104Ev();
+extern void _ZN6S583C34v105Ev();
+extern void _ZN6S583C34v106Ev();
+extern void _ZN6S583C34v107Ev();
+extern void _ZN6S583C34v108Ev();
+extern void _ZN6S583C34v109Ev();
+extern void _ZN9S583C2_nt4v110Ev();
+extern void _ZN9S583C2_nt4v111Ev();
+extern void _ZN9S583C2_nt4v112Ev();
+extern void _ZN9S583C2_nt4v113Ev();
+extern void _ZN6S583C12v1Ev();
+extern void _ZN6S583C12v2Ev();
+extern void _ZN6S583C12v3Ev();
+static  VTBL_ENTRY vtc_S583C1[] = {
+  0,
+  (VTBL_ENTRY)&(_ZTI6S583C1[0]),
+  (VTBL_ENTRY)&_ZN6S583C1D1Ev,
+  (VTBL_ENTRY)&_ZN6S583C1D0Ev,
+  (VTBL_ENTRY)&_ZN6S583C52v4Ev,
+  (VTBL_ENTRY)&_ZN6S583C52v5Ev,
+  (VTBL_ENTRY)&_ZN6S583C52v6Ev,
+  (VTBL_ENTRY)&_ZN6S583C52v7Ev,
+  (VTBL_ENTRY)&_ZN6S583C52v8Ev,
+  (VTBL_ENTRY)&_ZN6S583C52v9Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v10Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v11Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v12Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v13Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v14Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v15Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v16Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v17Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v18Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v19Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v20Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v21Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v22Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v23Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v24Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v25Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v26Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v27Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v28Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v29Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v30Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v31Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v32Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v33Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v34Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v35Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v36Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v37Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v38Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v39Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v40Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v41Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v42Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v43Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v44Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v45Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v46Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v47Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v48Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v49Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v50Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v51Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v52Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v53Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v54Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v55Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v56Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v57Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v58Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v59Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v60Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v61Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v62Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v63Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v64Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v65Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v66Ev,
+  (VTBL_ENTRY)&_ZN6S583C53v67Ev,
+  (VTBL_ENTRY)&_ZN6S583C43v68Ev,
+  (VTBL_ENTRY)&_ZN6S583C43v69Ev,
+  (VTBL_ENTRY)&_ZN6S583C43v70Ev,
+  (VTBL_ENTRY)&_ZN6S583C43v71Ev,
+  (VTBL_ENTRY)&_ZN6S583C43v72Ev,
+  (VTBL_ENTRY)&_ZN6S583C43v73Ev,
+  (VTBL_ENTRY)&_ZN6S583C43v74Ev,
+  (VTBL_ENTRY)&_ZN6S583C43v75Ev,
+  (VTBL_ENTRY)&_ZN6S583C43v76Ev,
+  (VTBL_ENTRY)&_ZN6S583C43v77Ev,
+  (VTBL_ENTRY)&_ZN6S583C43v78Ev,
+  (VTBL_ENTRY)&_ZN6S583C43v79Ev,
+  (VTBL_ENTRY)&_ZN6S583C43v80Ev,
+  (VTBL_ENTRY)&_ZN6S583C43v81Ev,
+  (VTBL_ENTRY)&_ZN6S583C43v82Ev,
+  (VTBL_ENTRY)&_ZN6S583C43v83Ev,
+  (VTBL_ENTRY)&_ZN6S583C43v84Ev,
+  (VTBL_ENTRY)&_ZN6S583C43v85Ev,
+  (VTBL_ENTRY)&_ZN6S583C43v86Ev,
+  (VTBL_ENTRY)&_ZN6S583C43v87Ev,
+  (VTBL_ENTRY)&_ZN6S583C43v88Ev,
+  (VTBL_ENTRY)&_ZN6S583C43v89Ev,
+  (VTBL_ENTRY)&_ZN6S583C33v90Ev,
+  (VTBL_ENTRY)&_ZN6S583C33v91Ev,
+  (VTBL_ENTRY)&_ZN6S583C33v92Ev,
+  (VTBL_ENTRY)&_ZN6S583C33v93Ev,
+  (VTBL_ENTRY)&_ZN6S583C33v94Ev,
+  (VTBL_ENTRY)&_ZN6S583C33v95Ev,
+  (VTBL_ENTRY)&_ZN6S583C33v96Ev,
+  (VTBL_ENTRY)&_ZN6S583C33v97Ev,
+  (VTBL_ENTRY)&_ZN6S583C33v98Ev,
+  (VTBL_ENTRY)&_ZN6S583C33v99Ev,
+  (VTBL_ENTRY)&_ZN6S583C34v100Ev,
+  (VTBL_ENTRY)&_ZN6S583C34v101Ev,
+  (VTBL_ENTRY)&_ZN6S583C34v102Ev,
+  (VTBL_ENTRY)&_ZN6S583C34v103Ev,
+  (VTBL_ENTRY)&_ZN6S583C34v104Ev,
+  (VTBL_ENTRY)&_ZN6S583C34v105Ev,
+  (VTBL_ENTRY)&_ZN6S583C34v106Ev,
+  (VTBL_ENTRY)&_ZN6S583C34v107Ev,
+  (VTBL_ENTRY)&_ZN6S583C34v108Ev,
+  (VTBL_ENTRY)&_ZN6S583C34v109Ev,
+  (VTBL_ENTRY)&_ZN9S583C2_nt4v110Ev,
+  (VTBL_ENTRY)&_ZN9S583C2_nt4v111Ev,
+  (VTBL_ENTRY)&_ZN9S583C2_nt4v112Ev,
+  (VTBL_ENTRY)&_ZN9S583C2_nt4v113Ev,
+  (VTBL_ENTRY)&_ZN6S583C12v1Ev,
+  (VTBL_ENTRY)&_ZN6S583C12v2Ev,
+  (VTBL_ENTRY)&_ZN6S583C12v3Ev,
+};
+extern VTBL_ENTRY _ZTI6S583C1[];
+extern  VTBL_ENTRY _ZTV6S583C1[];
+Class_Descriptor cd_S583C1 = {  "S583C1", // class name
+  bases_S583C1, 4,
+  &(vtc_S583C1[0]), // expected_vtbl_contents
+  0, //no vtt
+  ABISELECT(312,232), // object size
+  NSPAIRA(_ZTI6S583C1),ABISELECT(24,12), //typeinfo_var
+  NSPAIRA(_ZTV6S583C1),117, //virtual function table var
+  2, // offset into main vftv pointed to by object[0]
+  {0,0},0, // virtual table table var
+  4, // n_initialized_bases
+  0, // has_virtual_bases
+  1, // has_class_type_fields
+  0, // alt-thunk-names
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S17824C5  {
+  ::S6491C20_nt s17824c5f0;
+  unsigned int s17824c5f1:1;
+  virtual  ~S17824C5(); // _ZN8S17824C5D1Ev
+  virtual void  v4(); // _ZN8S17824C52v4Ev
+  virtual void  v5(); // _ZN8S17824C52v5Ev
+  virtual void  v6(); // _ZN8S17824C52v6Ev
+  virtual void  v7(); // _ZN8S17824C52v7Ev
+  virtual void  v8(); // _ZN8S17824C52v8Ev
+  virtual void  v9(); // _ZN8S17824C52v9Ev
+  virtual void  v10(); // _ZN8S17824C53v10Ev
+  S17824C5(); // tgen
+};
+//SIG(-1 S17824C5) C1{ vd v1 v2 v3 v4 v5 v6 v7 FC2{ m Fp[3]} Fi:1}
+
+
+ S17824C5 ::~S17824C5(){ note_dtor("S17824C5", this);}
+void  S17824C5 ::v4(){vfunc_called(this, "_ZN8S17824C52v4Ev");}
+void  S17824C5 ::v5(){vfunc_called(this, "_ZN8S17824C52v5Ev");}
+void  S17824C5 ::v6(){vfunc_called(this, "_ZN8S17824C52v6Ev");}
+void  S17824C5 ::v7(){vfunc_called(this, "_ZN8S17824C52v7Ev");}
+void  S17824C5 ::v8(){vfunc_called(this, "_ZN8S17824C52v8Ev");}
+void  S17824C5 ::v9(){vfunc_called(this, "_ZN8S17824C52v9Ev");}
+void  S17824C5 ::v10(){vfunc_called(this, "_ZN8S17824C53v10Ev");}
+S17824C5 ::S17824C5(){ note_ctor("S17824C5", this);} // tgen
+
+static void Test_S17824C5()
+{
+  extern Class_Descriptor cd_S17824C5;
+  void *lvp;
+  {
+    ABISELECT(double,int) buf[6];
+    init_test(&cd_S17824C5, buf);
+    S17824C5 *dp, &lv = *(dp=new (buf) S17824C5());
+    lvp = (void*)&lv;
+    check2(sizeof(lv), ABISELECT(40,20), "sizeof(S17824C5)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S17824C5)");
+    check_field_offset(lv, s17824c5f0, ABISELECT(8,4), "S17824C5.s17824c5f0");
+    set_bf_and_test(lv, s17824c5f1, ABISELECT(32,16), 0, 1, 1, "S17824C5");
+    test_class_info(&lv, &cd_S17824C5);
+    dp->~S17824C5();
+  }
+  Check_Ctor_Dtor_Calls(lvp);
+}
+static Arrange_To_Call_Me vS17824C5(Test_S17824C5, "S17824C5", ABISELECT(40,20));
+
+#else // __cplusplus
+
+extern void _ZN8S17824C5C1Ev();
+extern void _ZN8S17824C5D1Ev();
+Name_Map name_map_S17824C5[] = {
+  NSPAIR(_ZN8S17824C5C1Ev),
+  NSPAIR(_ZN8S17824C5D1Ev),
+  {0,0}
+};
+extern VTBL_ENTRY _ZTI8S17824C5[];
+extern void _ZN8S17824C5D1Ev();
+extern void _ZN8S17824C5D0Ev();
+extern void _ZN8S17824C52v4Ev();
+extern void _ZN8S17824C52v5Ev();
+extern void _ZN8S17824C52v6Ev();
+extern void _ZN8S17824C52v7Ev();
+extern void _ZN8S17824C52v8Ev();
+extern void _ZN8S17824C52v9Ev();
+extern void _ZN8S17824C53v10Ev();
+static  VTBL_ENTRY vtc_S17824C5[] = {
+  0,
+  (VTBL_ENTRY)&(_ZTI8S17824C5[0]),
+  (VTBL_ENTRY)&_ZN8S17824C5D1Ev,
+  (VTBL_ENTRY)&_ZN8S17824C5D0Ev,
+  (VTBL_ENTRY)&_ZN8S17824C52v4Ev,
+  (VTBL_ENTRY)&_ZN8S17824C52v5Ev,
+  (VTBL_ENTRY)&_ZN8S17824C52v6Ev,
+  (VTBL_ENTRY)&_ZN8S17824C52v7Ev,
+  (VTBL_ENTRY)&_ZN8S17824C52v8Ev,
+  (VTBL_ENTRY)&_ZN8S17824C52v9Ev,
+  (VTBL_ENTRY)&_ZN8S17824C53v10Ev,
+};
+extern VTBL_ENTRY _ZTI8S17824C5[];
+extern  VTBL_ENTRY _ZTV8S17824C5[];
+Class_Descriptor cd_S17824C5 = {  "S17824C5", // class name
+  0,0,//no base classes
+  &(vtc_S17824C5[0]), // expected_vtbl_contents
+  0, //no vtt
+  ABISELECT(40,20), // object size
+  NSPAIRA(_ZTI8S17824C5),ABISELECT(16,8), //typeinfo_var
+  NSPAIRA(_ZTV8S17824C5),11, //virtual function table var
+  2, // offset into main vftv pointed to by object[0]
+  {0,0},0, // virtual table table var
+  0, // n_initialized_bases
+  0, // has_virtual_bases
+  1, // has_class_type_fields
+  0, // alt-thunk-names
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S17824C7_nt  {
+  void *s17824c7f0;
+  void  mf17824c7(); // _ZN11S17824C7_nt9mf17824c7Ev
+};
+//SIG(-1 S17824C7_nt) C1{ m Fp}
+
+
+void  S17824C7_nt ::mf17824c7(){}
+
+//skip512 S17824C7_nt
+
+#else // __cplusplus
+
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S17824C4  : S17824C5 {
+  ::S17824C7_nt s17824c4f0;
+  virtual  ~S17824C4(); // _ZN8S17824C4D1Ev
+  virtual void  v11(); // _ZN8S17824C43v11Ev
+  virtual void  v12(); // _ZN8S17824C43v12Ev
+  S17824C4(); // tgen
+};
+//SIG(-1 S17824C4) C1{ BC2{ vd v3 v4 v5 v6 v7 v8 v9 FC3{ m Fp[3]} Fi:1} vd v1 v2 FC4{ m Fp}}
+
+
+ S17824C4 ::~S17824C4(){ note_dtor("S17824C4", this);}
+void  S17824C4 ::v11(){vfunc_called(this, "_ZN8S17824C43v11Ev");}
+void  S17824C4 ::v12(){vfunc_called(this, "_ZN8S17824C43v12Ev");}
+S17824C4 ::S17824C4(){ note_ctor("S17824C4", this);} // tgen
+
+static void Test_S17824C4()
+{
+  extern Class_Descriptor cd_S17824C4;
+  void *lvp;
+  {
+    ABISELECT(double,int) buf[7];
+    init_test(&cd_S17824C4, buf);
+    S17824C4 *dp, &lv = *(dp=new (buf) S17824C4());
+    lvp = (void*)&lv;
+    check2(sizeof(lv), ABISELECT(48,24), "sizeof(S17824C4)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S17824C4)");
+    check_base_class_offset(lv, (S17824C5*), 0, "S17824C4");
+    check_field_offset(lv, s17824c4f0, ABISELECT(40,20), "S17824C4.s17824c4f0");
+    test_class_info(&lv, &cd_S17824C4);
+    dp->~S17824C4();
+  }
+  Check_Ctor_Dtor_Calls(lvp);
+}
+static Arrange_To_Call_Me vS17824C4(Test_S17824C4, "S17824C4", ABISELECT(48,24));
+
+#else // __cplusplus
+
+extern void _ZN8S17824C4C1Ev();
+extern void _ZN8S17824C4D1Ev();
+Name_Map name_map_S17824C4[] = {
+  NSPAIR(_ZN8S17824C4C1Ev),
+  NSPAIR(_ZN8S17824C4D1Ev),
+  {0,0}
+};
+extern Class_Descriptor cd_S17824C5;
+extern VTBL_ENTRY _ZTI8S17824C5[];
+extern  VTBL_ENTRY _ZTV8S17824C5[];
+static Base_Class bases_S17824C4[] = {
+  // ofst, vfto, nneg, vtt_idx, base_vtt_idx, init_seq, direct, virtual
+  {&cd_S17824C5,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    1, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {0}};
+extern VTBL_ENTRY _ZTI8S17824C4[];
+extern void _ZN8S17824C4D1Ev();
+extern void _ZN8S17824C4D0Ev();
+extern void _ZN8S17824C52v4Ev();
+extern void _ZN8S17824C52v5Ev();
+extern void _ZN8S17824C52v6Ev();
+extern void _ZN8S17824C52v7Ev();
+extern void _ZN8S17824C52v8Ev();
+extern void _ZN8S17824C52v9Ev();
+extern void _ZN8S17824C53v10Ev();
+extern void _ZN8S17824C43v11Ev();
+extern void _ZN8S17824C43v12Ev();
+static  VTBL_ENTRY vtc_S17824C4[] = {
+  0,
+  (VTBL_ENTRY)&(_ZTI8S17824C4[0]),
+  (VTBL_ENTRY)&_ZN8S17824C4D1Ev,
+  (VTBL_ENTRY)&_ZN8S17824C4D0Ev,
+  (VTBL_ENTRY)&_ZN8S17824C52v4Ev,
+  (VTBL_ENTRY)&_ZN8S17824C52v5Ev,
+  (VTBL_ENTRY)&_ZN8S17824C52v6Ev,
+  (VTBL_ENTRY)&_ZN8S17824C52v7Ev,
+  (VTBL_ENTRY)&_ZN8S17824C52v8Ev,
+  (VTBL_ENTRY)&_ZN8S17824C52v9Ev,
+  (VTBL_ENTRY)&_ZN8S17824C53v10Ev,
+  (VTBL_ENTRY)&_ZN8S17824C43v11Ev,
+  (VTBL_ENTRY)&_ZN8S17824C43v12Ev,
+};
+extern VTBL_ENTRY _ZTI8S17824C4[];
+extern  VTBL_ENTRY _ZTV8S17824C4[];
+Class_Descriptor cd_S17824C4 = {  "S17824C4", // class name
+  bases_S17824C4, 1,
+  &(vtc_S17824C4[0]), // expected_vtbl_contents
+  0, //no vtt
+  ABISELECT(48,24), // object size
+  NSPAIRA(_ZTI8S17824C4),ABISELECT(24,12), //typeinfo_var
+  NSPAIRA(_ZTV8S17824C4),13, //virtual function table var
+  2, // offset into main vftv pointed to by object[0]
+  {0,0},0, // virtual table table var
+  1, // n_initialized_bases
+  0, // has_virtual_bases
+  1, // has_class_type_fields
+  0, // alt-thunk-names
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S17824C3  : S17824C4 {
+  ::S6645C47 s17824c3f0;
+  virtual void  v1(); // _ZN8S17824C32v1Ev
+  virtual void  v2(); // _ZN8S17824C32v2Ev
+  virtual void  v3(); // _ZN8S17824C32v3Ev
+  ~S17824C3(); // tgen
+  S17824C3(); // tgen
+};
+//SIG(-1 S17824C3) C1{ BC2{ BC3{ vd v4 v5 v6 v7 v8 v9 v10 FC4{ m Fp[3]} Fi:1} vd v11 v12 FC5{ m Fp}} v1 v2 v3 FC6{ BC7{ m Fp Fi[2]}}}
+
+
+void  S17824C3 ::v1(){vfunc_called(this, "_ZN8S17824C32v1Ev");}
+void  S17824C3 ::v2(){vfunc_called(this, "_ZN8S17824C32v2Ev");}
+void  S17824C3 ::v3(){vfunc_called(this, "_ZN8S17824C32v3Ev");}
+S17824C3 ::~S17824C3(){ note_dtor("S17824C3", this);} // tgen
+S17824C3 ::S17824C3(){ note_ctor("S17824C3", this);} // tgen
+
+static void Test_S17824C3()
+{
+  extern Class_Descriptor cd_S17824C3;
+  void *lvp;
+  {
+    ABISELECT(double,int) buf[ABISELECT(9,10)];
+    init_test(&cd_S17824C3, buf);
+    S17824C3 *dp, &lv = *(dp=new (buf) S17824C3());
+    lvp = (void*)&lv;
+    check2(sizeof(lv), ABISELECT(64,36), "sizeof(S17824C3)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S17824C3)");
+    check_base_class_offset(lv, (S17824C5*)(S17824C4*), 0, "S17824C3");
+    check_base_class_offset(lv, (S17824C4*), 0, "S17824C3");
+    check_field_offset(lv, s17824c3f0, ABISELECT(48,24), "S17824C3.s17824c3f0");
+    test_class_info(&lv, &cd_S17824C3);
+    dp->~S17824C3();
+  }
+  Check_Ctor_Dtor_Calls(lvp);
+}
+static Arrange_To_Call_Me vS17824C3(Test_S17824C3, "S17824C3", ABISELECT(64,36));
+
+#else // __cplusplus
+
+extern void _ZN8S17824C3C1Ev();
+extern void _ZN8S17824C3D1Ev();
+Name_Map name_map_S17824C3[] = {
+  NSPAIR(_ZN8S17824C3C1Ev),
+  NSPAIR(_ZN8S17824C3D1Ev),
+  {0,0}
+};
+extern Class_Descriptor cd_S17824C5;
+extern VTBL_ENTRY _ZTI8S17824C5[];
+extern  VTBL_ENTRY _ZTV8S17824C5[];
+extern Class_Descriptor cd_S17824C4;
+extern VTBL_ENTRY _ZTI8S17824C4[];
+extern  VTBL_ENTRY _ZTV8S17824C4[];
+static Base_Class bases_S17824C3[] = {
+  // ofst, vfto, nneg, vtt_idx, base_vtt_idx, init_seq, direct, virtual
+  {&cd_S17824C5,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    1, //init_seq
+    1, //immediately_derived
+  0, 0},
+  {&cd_S17824C4,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    2, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {0}};
+extern VTBL_ENTRY _ZTI8S17824C3[];
+extern void _ZN8S17824C3D1Ev();
+extern void _ZN8S17824C3D0Ev();
+extern void _ZN8S17824C52v4Ev();
+extern void _ZN8S17824C52v5Ev();
+extern void _ZN8S17824C52v6Ev();
+extern void _ZN8S17824C52v7Ev();
+extern void _ZN8S17824C52v8Ev();
+extern void _ZN8S17824C52v9Ev();
+extern void _ZN8S17824C53v10Ev();
+extern void _ZN8S17824C43v11Ev();
+extern void _ZN8S17824C43v12Ev();
+extern void _ZN8S17824C32v1Ev();
+extern void _ZN8S17824C32v2Ev();
+extern void _ZN8S17824C32v3Ev();
+static  VTBL_ENTRY vtc_S17824C3[] = {
+  0,
+  (VTBL_ENTRY)&(_ZTI8S17824C3[0]),
+  (VTBL_ENTRY)&_ZN8S17824C3D1Ev,
+  (VTBL_ENTRY)&_ZN8S17824C3D0Ev,
+  (VTBL_ENTRY)&_ZN8S17824C52v4Ev,
+  (VTBL_ENTRY)&_ZN8S17824C52v5Ev,
+  (VTBL_ENTRY)&_ZN8S17824C52v6Ev,
+  (VTBL_ENTRY)&_ZN8S17824C52v7Ev,
+  (VTBL_ENTRY)&_ZN8S17824C52v8Ev,
+  (VTBL_ENTRY)&_ZN8S17824C52v9Ev,
+  (VTBL_ENTRY)&_ZN8S17824C53v10Ev,
+  (VTBL_ENTRY)&_ZN8S17824C43v11Ev,
+  (VTBL_ENTRY)&_ZN8S17824C43v12Ev,
+  (VTBL_ENTRY)&_ZN8S17824C32v1Ev,
+  (VTBL_ENTRY)&_ZN8S17824C32v2Ev,
+  (VTBL_ENTRY)&_ZN8S17824C32v3Ev,
+};
+extern VTBL_ENTRY _ZTI8S17824C3[];
+extern  VTBL_ENTRY _ZTV8S17824C3[];
+Class_Descriptor cd_S17824C3 = {  "S17824C3", // class name
+  bases_S17824C3, 2,
+  &(vtc_S17824C3[0]), // expected_vtbl_contents
+  0, //no vtt
+  ABISELECT(64,36), // object size
+  NSPAIRA(_ZTI8S17824C3),ABISELECT(24,12), //typeinfo_var
+  NSPAIRA(_ZTV8S17824C3),16, //virtual function table var
+  2, // offset into main vftv pointed to by object[0]
+  {0,0},0, // virtual table table var
+  2, // n_initialized_bases
+  0, // has_virtual_bases
+  1, // has_class_type_fields
+  0, // alt-thunk-names
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S17824C12  : S17824C4 {
+  ::S6645C42_nt s17824c12f0;
+  virtual void  v16(); // _ZN9S17824C123v16Ev
+  virtual void  v17(); // _ZN9S17824C123v17Ev
+  virtual void  v18(); // _ZN9S17824C123v18Ev
+  ~S17824C12(); // tgen
+  S17824C12(); // tgen
+};
+//SIG(-1 S17824C12) C1{ BC2{ BC3{ vd v4 v5 v6 v7 v8 v9 v10 FC4{ m Fp[3]} Fi:1} vd v11 v12 FC5{ m Fp}} v1 v2 v3 FC6{ BC7{ m Fp Fi[2]}}}
+
+
+void  S17824C12 ::v16(){vfunc_called(this, "_ZN9S17824C123v16Ev");}
+void  S17824C12 ::v17(){vfunc_called(this, "_ZN9S17824C123v17Ev");}
+void  S17824C12 ::v18(){vfunc_called(this, "_ZN9S17824C123v18Ev");}
+S17824C12 ::~S17824C12(){ note_dtor("S17824C12", this);} // tgen
+S17824C12 ::S17824C12(){ note_ctor("S17824C12", this);} // tgen
+
+static void Test_S17824C12()
+{
+  extern Class_Descriptor cd_S17824C12;
+  void *lvp;
+  {
+    ABISELECT(double,int) buf[ABISELECT(9,10)];
+    init_test(&cd_S17824C12, buf);
+    S17824C12 *dp, &lv = *(dp=new (buf) S17824C12());
+    lvp = (void*)&lv;
+    check2(sizeof(lv), ABISELECT(64,36), "sizeof(S17824C12)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S17824C12)");
+    check_base_class_offset(lv, (S17824C5*)(S17824C4*), 0, "S17824C12");
+    check_base_class_offset(lv, (S17824C4*), 0, "S17824C12");
+    check_field_offset(lv, s17824c12f0, ABISELECT(48,24), "S17824C12.s17824c12f0");
+    test_class_info(&lv, &cd_S17824C12);
+    dp->~S17824C12();
+  }
+  Check_Ctor_Dtor_Calls(lvp);
+}
+static Arrange_To_Call_Me vS17824C12(Test_S17824C12, "S17824C12", ABISELECT(64,36));
+
+#else // __cplusplus
+
+extern void _ZN9S17824C12C1Ev();
+extern void _ZN9S17824C12D1Ev();
+Name_Map name_map_S17824C12[] = {
+  NSPAIR(_ZN9S17824C12C1Ev),
+  NSPAIR(_ZN9S17824C12D1Ev),
+  {0,0}
+};
+extern Class_Descriptor cd_S17824C5;
+extern VTBL_ENTRY _ZTI8S17824C5[];
+extern  VTBL_ENTRY _ZTV8S17824C5[];
+extern Class_Descriptor cd_S17824C4;
+extern VTBL_ENTRY _ZTI8S17824C4[];
+extern  VTBL_ENTRY _ZTV8S17824C4[];
+static Base_Class bases_S17824C12[] = {
+  // ofst, vfto, nneg, vtt_idx, base_vtt_idx, init_seq, direct, virtual
+  {&cd_S17824C5,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    1, //init_seq
+    1, //immediately_derived
+  0, 0},
+  {&cd_S17824C4,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    2, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {0}};
+extern VTBL_ENTRY _ZTI9S17824C12[];
+extern void _ZN9S17824C12D1Ev();
+extern void _ZN9S17824C12D0Ev();
+extern void _ZN8S17824C52v4Ev();
+extern void _ZN8S17824C52v5Ev();
+extern void _ZN8S17824C52v6Ev();
+extern void _ZN8S17824C52v7Ev();
+extern void _ZN8S17824C52v8Ev();
+extern void _ZN8S17824C52v9Ev();
+extern void _ZN8S17824C53v10Ev();
+extern void _ZN8S17824C43v11Ev();
+extern void _ZN8S17824C43v12Ev();
+extern void _ZN9S17824C123v16Ev();
+extern void _ZN9S17824C123v17Ev();
+extern void _ZN9S17824C123v18Ev();
+static  VTBL_ENTRY vtc_S17824C12[] = {
+  0,
+  (VTBL_ENTRY)&(_ZTI9S17824C12[0]),
+  (VTBL_ENTRY)&_ZN9S17824C12D1Ev,
+  (VTBL_ENTRY)&_ZN9S17824C12D0Ev,
+  (VTBL_ENTRY)&_ZN8S17824C52v4Ev,
+  (VTBL_ENTRY)&_ZN8S17824C52v5Ev,
+  (VTBL_ENTRY)&_ZN8S17824C52v6Ev,
+  (VTBL_ENTRY)&_ZN8S17824C52v7Ev,
+  (VTBL_ENTRY)&_ZN8S17824C52v8Ev,
+  (VTBL_ENTRY)&_ZN8S17824C52v9Ev,
+  (VTBL_ENTRY)&_ZN8S17824C53v10Ev,
+  (VTBL_ENTRY)&_ZN8S17824C43v11Ev,
+  (VTBL_ENTRY)&_ZN8S17824C43v12Ev,
+  (VTBL_ENTRY)&_ZN9S17824C123v16Ev,
+  (VTBL_ENTRY)&_ZN9S17824C123v17Ev,
+  (VTBL_ENTRY)&_ZN9S17824C123v18Ev,
+};
+extern VTBL_ENTRY _ZTI9S17824C12[];
+extern  VTBL_ENTRY _ZTV9S17824C12[];
+Class_Descriptor cd_S17824C12 = {  "S17824C12", // class name
+  bases_S17824C12, 2,
+  &(vtc_S17824C12[0]), // expected_vtbl_contents
+  0, //no vtt
+  ABISELECT(64,36), // object size
+  NSPAIRA(_ZTI9S17824C12),ABISELECT(24,12), //typeinfo_var
+  NSPAIRA(_ZTV9S17824C12),16, //virtual function table var
+  2, // offset into main vftv pointed to by object[0]
+  {0,0},0, // virtual table table var
+  2, // n_initialized_bases
+  0, // has_virtual_bases
+  1, // has_class_type_fields
+  0, // alt-thunk-names
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S17824C16  : S17824C4 {
+  ::S6491C23 s17824c16f0;
+  virtual void  v22(); // _ZN9S17824C163v22Ev
+  virtual void  v23(); // _ZN9S17824C163v23Ev
+  virtual void  v24(); // _ZN9S17824C163v24Ev
+  ~S17824C16(); // tgen
+  S17824C16(); // tgen
+};
+//SIG(-1 S17824C16) C1{ BC2{ BC3{ vd v4 v5 v6 v7 v8 v9 v10 FC4{ m Fp[3]} Fi:1} vd v11 v12 FC5{ m Fp}} v1 v2 v3 FC6{ BC7{ m Fp Fi[2]}}}
+
+
+void  S17824C16 ::v22(){vfunc_called(this, "_ZN9S17824C163v22Ev");}
+void  S17824C16 ::v23(){vfunc_called(this, "_ZN9S17824C163v23Ev");}
+void  S17824C16 ::v24(){vfunc_called(this, "_ZN9S17824C163v24Ev");}
+S17824C16 ::~S17824C16(){ note_dtor("S17824C16", this);} // tgen
+S17824C16 ::S17824C16(){ note_ctor("S17824C16", this);} // tgen
+
+static void Test_S17824C16()
+{
+  extern Class_Descriptor cd_S17824C16;
+  void *lvp;
+  {
+    ABISELECT(double,int) buf[ABISELECT(9,10)];
+    init_test(&cd_S17824C16, buf);
+    S17824C16 *dp, &lv = *(dp=new (buf) S17824C16());
+    lvp = (void*)&lv;
+    check2(sizeof(lv), ABISELECT(64,36), "sizeof(S17824C16)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S17824C16)");
+    check_base_class_offset(lv, (S17824C5*)(S17824C4*), 0, "S17824C16");
+    check_base_class_offset(lv, (S17824C4*), 0, "S17824C16");
+    check_field_offset(lv, s17824c16f0, ABISELECT(48,24), "S17824C16.s17824c16f0");
+    test_class_info(&lv, &cd_S17824C16);
+    dp->~S17824C16();
+  }
+  Check_Ctor_Dtor_Calls(lvp);
+}
+static Arrange_To_Call_Me vS17824C16(Test_S17824C16, "S17824C16", ABISELECT(64,36));
+
+#else // __cplusplus
+
+extern void _ZN9S17824C16C1Ev();
+extern void _ZN9S17824C16D1Ev();
+Name_Map name_map_S17824C16[] = {
+  NSPAIR(_ZN9S17824C16C1Ev),
+  NSPAIR(_ZN9S17824C16D1Ev),
+  {0,0}
+};
+extern Class_Descriptor cd_S17824C5;
+extern VTBL_ENTRY _ZTI8S17824C5[];
+extern  VTBL_ENTRY _ZTV8S17824C5[];
+extern Class_Descriptor cd_S17824C4;
+extern VTBL_ENTRY _ZTI8S17824C4[];
+extern  VTBL_ENTRY _ZTV8S17824C4[];
+static Base_Class bases_S17824C16[] = {
+  // ofst, vfto, nneg, vtt_idx, base_vtt_idx, init_seq, direct, virtual
+  {&cd_S17824C5,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    1, //init_seq
+    1, //immediately_derived
+  0, 0},
+  {&cd_S17824C4,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    2, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {0}};
+extern VTBL_ENTRY _ZTI9S17824C16[];
+extern void _ZN9S17824C16D1Ev();
+extern void _ZN9S17824C16D0Ev();
+extern void _ZN8S17824C52v4Ev();
+extern void _ZN8S17824C52v5Ev();
+extern void _ZN8S17824C52v6Ev();
+extern void _ZN8S17824C52v7Ev();
+extern void _ZN8S17824C52v8Ev();
+extern void _ZN8S17824C52v9Ev();
+extern void _ZN8S17824C53v10Ev();
+extern void _ZN8S17824C43v11Ev();
+extern void _ZN8S17824C43v12Ev();
+extern void _ZN9S17824C163v22Ev();
+extern void _ZN9S17824C163v23Ev();
+extern void _ZN9S17824C163v24Ev();
+static  VTBL_ENTRY vtc_S17824C16[] = {
+  0,
+  (VTBL_ENTRY)&(_ZTI9S17824C16[0]),
+  (VTBL_ENTRY)&_ZN9S17824C16D1Ev,
+  (VTBL_ENTRY)&_ZN9S17824C16D0Ev,
+  (VTBL_ENTRY)&_ZN8S17824C52v4Ev,
+  (VTBL_ENTRY)&_ZN8S17824C52v5Ev,
+  (VTBL_ENTRY)&_ZN8S17824C52v6Ev,
+  (VTBL_ENTRY)&_ZN8S17824C52v7Ev,
+  (VTBL_ENTRY)&_ZN8S17824C52v8Ev,
+  (VTBL_ENTRY)&_ZN8S17824C52v9Ev,
+  (VTBL_ENTRY)&_ZN8S17824C53v10Ev,
+  (VTBL_ENTRY)&_ZN8S17824C43v11Ev,
+  (VTBL_ENTRY)&_ZN8S17824C43v12Ev,
+  (VTBL_ENTRY)&_ZN9S17824C163v22Ev,
+  (VTBL_ENTRY)&_ZN9S17824C163v23Ev,
+  (VTBL_ENTRY)&_ZN9S17824C163v24Ev,
+};
+extern VTBL_ENTRY _ZTI9S17824C16[];
+extern  VTBL_ENTRY _ZTV9S17824C16[];
+Class_Descriptor cd_S17824C16 = {  "S17824C16", // class name
+  bases_S17824C16, 2,
+  &(vtc_S17824C16[0]), // expected_vtbl_contents
+  0, //no vtt
+  ABISELECT(64,36), // object size
+  NSPAIRA(_ZTI9S17824C16),ABISELECT(24,12), //typeinfo_var
+  NSPAIRA(_ZTV9S17824C16),16, //virtual function table var
+  2, // offset into main vftv pointed to by object[0]
+  {0,0},0, // virtual table table var
+  2, // n_initialized_bases
+  0, // has_virtual_bases
+  1, // has_class_type_fields
+  0, // alt-thunk-names
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S17824C20  : S17824C5 {
+  ::S6491C27 s17824c20f0;
+  ::S6491C27 s17824c20f1;
+  ::S17824C7_nt s17824c20f2;
+  ::S17824C7_nt s17824c20f3;
+  ::S17824C7_nt s17824c20f4;
+  ::S17824C7_nt s17824c20f5;
+  ::S17824C7_nt s17824c20f6;
+  ::S6491C30 s17824c20f7;
+  virtual void  v26(); // _ZN9S17824C203v26Ev
+  virtual void  v27(); // _ZN9S17824C203v27Ev
+  virtual void  v28(); // _ZN9S17824C203v28Ev
+  ~S17824C20(); // tgen
+  S17824C20(); // tgen
+};
+//SIG(-1 S17824C20) C1{ BC2{ vd v4 v5 v6 v7 v8 v9 v10 FC3{ m Fp[3]} Fi:1} v1 v2 v3 FC4{ m FC5{ Fp Fi[2]}[16] Fi} FC4 FC6{ m Fp} FC6 FC6 FC6 FC6 FC7{ m FC8{ Fc[3] Fi} Fi[2]}}
+
+
+void  S17824C20 ::v26(){vfunc_called(this, "_ZN9S17824C203v26Ev");}
+void  S17824C20 ::v27(){vfunc_called(this, "_ZN9S17824C203v27Ev");}
+void  S17824C20 ::v28(){vfunc_called(this, "_ZN9S17824C203v28Ev");}
+S17824C20 ::~S17824C20(){ note_dtor("S17824C20", this);} // tgen
+S17824C20 ::S17824C20(){ note_ctor("S17824C20", this);} // tgen
+
+static void Test_S17824C20()
+{
+  extern Class_Descriptor cd_S17824C20;
+  void *lvp;
+  {
+    ABISELECT(double,int) buf[ABISELECT(79,113)];
+    init_test(&cd_S17824C20, buf);
+    S17824C20 *dp, &lv = *(dp=new (buf) S17824C20());
+    lvp = (void*)&lv;
+    check2(sizeof(lv), ABISELECT(624,448), "sizeof(S17824C20)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S17824C20)");
+    check_base_class_offset(lv, (S17824C5*), 0, "S17824C20");
+    check_field_offset(lv, s17824c20f0, ABISELECT(40,20), "S17824C20.s17824c20f0");
+    check_field_offset(lv, s17824c20f1, ABISELECT(304,216), "S17824C20.s17824c20f1");
+    check_field_offset(lv, s17824c20f2, ABISELECT(568,412), "S17824C20.s17824c20f2");
+    check_field_offset(lv, s17824c20f3, ABISELECT(576,416), "S17824C20.s17824c20f3");
+    check_field_offset(lv, s17824c20f4, ABISELECT(584,420), "S17824C20.s17824c20f4");
+    check_field_offset(lv, s17824c20f5, ABISELECT(592,424), "S17824C20.s17824c20f5");
+    check_field_offset(lv, s17824c20f6, ABISELECT(600,428), "S17824C20.s17824c20f6");
+    check_field_offset(lv, s17824c20f7, ABISELECT(608,432), "S17824C20.s17824c20f7");
+    test_class_info(&lv, &cd_S17824C20);
+    dp->~S17824C20();
+  }
+  Check_Ctor_Dtor_Calls(lvp);
+}
+static Arrange_To_Call_Me vS17824C20(Test_S17824C20, "S17824C20", ABISELECT(624,448));
+
+#else // __cplusplus
+
+extern void _ZN9S17824C20C1Ev();
+extern void _ZN9S17824C20D1Ev();
+Name_Map name_map_S17824C20[] = {
+  NSPAIR(_ZN9S17824C20C1Ev),
+  NSPAIR(_ZN9S17824C20D1Ev),
+  {0,0}
+};
+extern Class_Descriptor cd_S17824C5;
+extern VTBL_ENTRY _ZTI8S17824C5[];
+extern  VTBL_ENTRY _ZTV8S17824C5[];
+static Base_Class bases_S17824C20[] = {
+  // ofst, vfto, nneg, vtt_idx, base_vtt_idx, init_seq, direct, virtual
+  {&cd_S17824C5,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    1, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {0}};
+extern VTBL_ENTRY _ZTI9S17824C20[];
+extern void _ZN9S17824C20D1Ev();
+extern void _ZN9S17824C20D0Ev();
+extern void _ZN8S17824C52v4Ev();
+extern void _ZN8S17824C52v5Ev();
+extern void _ZN8S17824C52v6Ev();
+extern void _ZN8S17824C52v7Ev();
+extern void _ZN8S17824C52v8Ev();
+extern void _ZN8S17824C52v9Ev();
+extern void _ZN8S17824C53v10Ev();
+extern void _ZN9S17824C203v26Ev();
+extern void _ZN9S17824C203v27Ev();
+extern void _ZN9S17824C203v28Ev();
+static  VTBL_ENTRY vtc_S17824C20[] = {
+  0,
+  (VTBL_ENTRY)&(_ZTI9S17824C20[0]),
+  (VTBL_ENTRY)&_ZN9S17824C20D1Ev,
+  (VTBL_ENTRY)&_ZN9S17824C20D0Ev,
+  (VTBL_ENTRY)&_ZN8S17824C52v4Ev,
+  (VTBL_ENTRY)&_ZN8S17824C52v5Ev,
+  (VTBL_ENTRY)&_ZN8S17824C52v6Ev,
+  (VTBL_ENTRY)&_ZN8S17824C52v7Ev,
+  (VTBL_ENTRY)&_ZN8S17824C52v8Ev,
+  (VTBL_ENTRY)&_ZN8S17824C52v9Ev,
+  (VTBL_ENTRY)&_ZN8S17824C53v10Ev,
+  (VTBL_ENTRY)&_ZN9S17824C203v26Ev,
+  (VTBL_ENTRY)&_ZN9S17824C203v27Ev,
+  (VTBL_ENTRY)&_ZN9S17824C203v28Ev,
+};
+extern VTBL_ENTRY _ZTI9S17824C20[];
+extern  VTBL_ENTRY _ZTV9S17824C20[];
+Class_Descriptor cd_S17824C20 = {  "S17824C20", // class name
+  bases_S17824C20, 1,
+  &(vtc_S17824C20[0]), // expected_vtbl_contents
+  0, //no vtt
+  ABISELECT(624,448), // object size
+  NSPAIRA(_ZTI9S17824C20),ABISELECT(24,12), //typeinfo_var
+  NSPAIRA(_ZTV9S17824C20),14, //virtual function table var
+  2, // offset into main vftv pointed to by object[0]
+  {0,0},0, // virtual table table var
+  1, // n_initialized_bases
+  0, // has_virtual_bases
+  1, // has_class_type_fields
+  0, // alt-thunk-names
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S17824C26  {
+  ::S6491C33 s17824c26f0;
+  ::S6491C33 s17824c26f1[3];
+  ::S6491C33 s17824c26f2;
+  ::S6491C34 s17824c26f3;
+  ::S6491C33 s17824c26f4;
+};
+//SIG(-1 S17824C26) C1{ FC2{ m Fp Fc[3] Fi} FC2[3] FC2 FC3{ m FC2[4] Fi} FC2}
+
+
+
+static void Test_S17824C26()
+{
+  {
+    init_simple_test("S17824C26");
+    S17824C26 lv;
+    check2(sizeof(lv), ABISELECT(168,124), "sizeof(S17824C26)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S17824C26)");
+    check_field_offset(lv, s17824c26f0, 0, "S17824C26.s17824c26f0");
+    check_field_offset(lv, s17824c26f1, ABISELECT(16,12), "S17824C26.s17824c26f1");
+    check_field_offset(lv, s17824c26f2, ABISELECT(64,48), "S17824C26.s17824c26f2");
+    check_field_offset(lv, s17824c26f3, ABISELECT(80,60), "S17824C26.s17824c26f3");
+    check_field_offset(lv, s17824c26f4, ABISELECT(152,112), "S17824C26.s17824c26f4");
+  }
+}
+static Arrange_To_Call_Me vS17824C26(Test_S17824C26, "S17824C26", ABISELECT(168,124));
+
+#else // __cplusplus
+
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S17824C19  : S17824C20 {
+  ::S17824C26 s17824c19f0;
+  void *s17824c19f1;
+  virtual void  v29(); // _ZN9S17824C193v29Ev
+  ~S17824C19(); // tgen
+  S17824C19(); // tgen
+};
+//SIG(-1 S17824C19) C1{ BC2{ BC3{ vd v2 v3 v4 v5 v6 v7 v8 FC4{ m Fp[3]} Fi:1} v9 v10 v11 FC5{ m FC6{ Fp Fi[2]}[16] Fi} FC5 FC7{ m Fp} FC7 FC7 FC7 FC7 FC8{ m FC9{ Fc[3] Fi} Fi[2]}} v1 FC10{ FC11{ m Fp Fc[3] Fi} FC11[3] FC11 FC12{ m FC11[4] Fi} FC11} Fp}
+
+
+void  S17824C19 ::v29(){vfunc_called(this, "_ZN9S17824C193v29Ev");}
+S17824C19 ::~S17824C19(){ note_dtor("S17824C19", this);} // tgen
+S17824C19 ::S17824C19(){ note_ctor("S17824C19", this);} // tgen
+
+static void Test_S17824C19()
+{
+  extern Class_Descriptor cd_S17824C19;
+  void *lvp;
+  {
+    ABISELECT(double,int) buf[ABISELECT(101,145)];
+    init_test(&cd_S17824C19, buf);
+    S17824C19 *dp, &lv = *(dp=new (buf) S17824C19());
+    lvp = (void*)&lv;
+    check2(sizeof(lv), ABISELECT(800,576), "sizeof(S17824C19)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S17824C19)");
+    check_base_class_offset(lv, (S17824C5*)(S17824C20*), 0, "S17824C19");
+    check_base_class_offset(lv, (S17824C20*), 0, "S17824C19");
+    check_field_offset(lv, s17824c19f0, ABISELECT(624,448), "S17824C19.s17824c19f0");
+    check_field_offset(lv, s17824c19f1, ABISELECT(792,572), "S17824C19.s17824c19f1");
+    test_class_info(&lv, &cd_S17824C19);
+    dp->~S17824C19();
+  }
+  Check_Ctor_Dtor_Calls(lvp);
+}
+static Arrange_To_Call_Me vS17824C19(Test_S17824C19, "S17824C19", ABISELECT(800,576));
+
+#else // __cplusplus
+
+extern void _ZN9S17824C19C1Ev();
+extern void _ZN9S17824C19D1Ev();
+Name_Map name_map_S17824C19[] = {
+  NSPAIR(_ZN9S17824C19C1Ev),
+  NSPAIR(_ZN9S17824C19D1Ev),
+  {0,0}
+};
+extern Class_Descriptor cd_S17824C5;
+extern VTBL_ENTRY _ZTI8S17824C5[];
+extern  VTBL_ENTRY _ZTV8S17824C5[];
+extern Class_Descriptor cd_S17824C20;
+extern VTBL_ENTRY _ZTI9S17824C20[];
+extern  VTBL_ENTRY _ZTV9S17824C20[];
+static Base_Class bases_S17824C19[] = {
+  // ofst, vfto, nneg, vtt_idx, base_vtt_idx, init_seq, direct, virtual
+  {&cd_S17824C5,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    1, //init_seq
+    1, //immediately_derived
+  0, 0},
+  {&cd_S17824C20,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    2, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {0}};
+extern VTBL_ENTRY _ZTI9S17824C19[];
+extern void _ZN9S17824C19D1Ev();
+extern void _ZN9S17824C19D0Ev();
+extern void _ZN8S17824C52v4Ev();
+extern void _ZN8S17824C52v5Ev();
+extern void _ZN8S17824C52v6Ev();
+extern void _ZN8S17824C52v7Ev();
+extern void _ZN8S17824C52v8Ev();
+extern void _ZN8S17824C52v9Ev();
+extern void _ZN8S17824C53v10Ev();
+extern void _ZN9S17824C203v26Ev();
+extern void _ZN9S17824C203v27Ev();
+extern void _ZN9S17824C203v28Ev();
+extern void _ZN9S17824C193v29Ev();
+static  VTBL_ENTRY vtc_S17824C19[] = {
+  0,
+  (VTBL_ENTRY)&(_ZTI9S17824C19[0]),
+  (VTBL_ENTRY)&_ZN9S17824C19D1Ev,
+  (VTBL_ENTRY)&_ZN9S17824C19D0Ev,
+  (VTBL_ENTRY)&_ZN8S17824C52v4Ev,
+  (VTBL_ENTRY)&_ZN8S17824C52v5Ev,
+  (VTBL_ENTRY)&_ZN8S17824C52v6Ev,
+  (VTBL_ENTRY)&_ZN8S17824C52v7Ev,
+  (VTBL_ENTRY)&_ZN8S17824C52v8Ev,
+  (VTBL_ENTRY)&_ZN8S17824C52v9Ev,
+  (VTBL_ENTRY)&_ZN8S17824C53v10Ev,
+  (VTBL_ENTRY)&_ZN9S17824C203v26Ev,
+  (VTBL_ENTRY)&_ZN9S17824C203v27Ev,
+  (VTBL_ENTRY)&_ZN9S17824C203v28Ev,
+  (VTBL_ENTRY)&_ZN9S17824C193v29Ev,
+};
+extern VTBL_ENTRY _ZTI9S17824C19[];
+extern  VTBL_ENTRY _ZTV9S17824C19[];
+Class_Descriptor cd_S17824C19 = {  "S17824C19", // class name
+  bases_S17824C19, 2,
+  &(vtc_S17824C19[0]), // expected_vtbl_contents
+  0, //no vtt
+  ABISELECT(800,576), // object size
+  NSPAIRA(_ZTI9S17824C19),ABISELECT(24,12), //typeinfo_var
+  NSPAIRA(_ZTV9S17824C19),15, //virtual function table var
+  2, // offset into main vftv pointed to by object[0]
+  {0,0},0, // virtual table table var
+  2, // n_initialized_bases
+  0, // has_virtual_bases
+  1, // has_class_type_fields
+  0, // alt-thunk-names
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S17824C18  : S17824C19 {
+  virtual void  v25(); // _ZN9S17824C183v25Ev
+  ~S17824C18(); // tgen
+  S17824C18(); // tgen
+};
+//SIG(-1 S17824C18) C1{ BC2{ BC3{ BC4{ vd v2 v3 v4 v5 v6 v7 v8 FC5{ m Fp[3]} Fi:1} v9 v10 v11 FC6{ m FC7{ Fp Fi[2]}[16] Fi} FC6 FC8{ m Fp} FC8 FC8 FC8 FC8 FC9{ m FC10{ Fc[3] Fi} Fi[2]}} v12 FC11{ FC12{ m Fp Fc[3] Fi} FC12[3] FC12 FC13{ m FC12[4] Fi} FC12} Fp} v1}
+
+
+void  S17824C18 ::v25(){vfunc_called(this, "_ZN9S17824C183v25Ev");}
+S17824C18 ::~S17824C18(){ note_dtor("S17824C18", this);} // tgen
+S17824C18 ::S17824C18(){ note_ctor("S17824C18", this);} // tgen
+
+static void Test_S17824C18()
+{
+  extern Class_Descriptor cd_S17824C18;
+  void *lvp;
+  {
+    ABISELECT(double,int) buf[ABISELECT(101,145)];
+    init_test(&cd_S17824C18, buf);
+    S17824C18 *dp, &lv = *(dp=new (buf) S17824C18());
+    lvp = (void*)&lv;
+    check2(sizeof(lv), ABISELECT(800,576), "sizeof(S17824C18)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S17824C18)");
+    check_base_class_offset(lv, (S17824C5*)(S17824C20*)(S17824C19*), 0, "S17824C18");
+    check_base_class_offset(lv, (S17824C20*)(S17824C19*), 0, "S17824C18");
+    check_base_class_offset(lv, (S17824C19*), 0, "S17824C18");
+    test_class_info(&lv, &cd_S17824C18);
+    dp->~S17824C18();
+  }
+  Check_Ctor_Dtor_Calls(lvp);
+}
+static Arrange_To_Call_Me vS17824C18(Test_S17824C18, "S17824C18", ABISELECT(800,576));
+
+#else // __cplusplus
+
+extern void _ZN9S17824C18C1Ev();
+extern void _ZN9S17824C18D1Ev();
+Name_Map name_map_S17824C18[] = {
+  NSPAIR(_ZN9S17824C18C1Ev),
+  NSPAIR(_ZN9S17824C18D1Ev),
+  {0,0}
+};
+extern Class_Descriptor cd_S17824C5;
+extern VTBL_ENTRY _ZTI8S17824C5[];
+extern  VTBL_ENTRY _ZTV8S17824C5[];
+extern Class_Descriptor cd_S17824C20;
+extern VTBL_ENTRY _ZTI9S17824C20[];
+extern  VTBL_ENTRY _ZTV9S17824C20[];
+extern Class_Descriptor cd_S17824C19;
+extern VTBL_ENTRY _ZTI9S17824C19[];
+extern  VTBL_ENTRY _ZTV9S17824C19[];
+static Base_Class bases_S17824C18[] = {
+  // ofst, vfto, nneg, vtt_idx, base_vtt_idx, init_seq, direct, virtual
+  {&cd_S17824C5,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    1, //init_seq
+    1, //immediately_derived
+  0, 0},
+  {&cd_S17824C20,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    2, //init_seq
+    2, //immediately_derived
+  0, 0},
+  {&cd_S17824C19,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    3, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {0}};
+extern VTBL_ENTRY _ZTI9S17824C18[];
+extern void _ZN9S17824C18D1Ev();
+extern void _ZN9S17824C18D0Ev();
+extern void _ZN8S17824C52v4Ev();
+extern void _ZN8S17824C52v5Ev();
+extern void _ZN8S17824C52v6Ev();
+extern void _ZN8S17824C52v7Ev();
+extern void _ZN8S17824C52v8Ev();
+extern void _ZN8S17824C52v9Ev();
+extern void _ZN8S17824C53v10Ev();
+extern void _ZN9S17824C203v26Ev();
+extern void _ZN9S17824C203v27Ev();
+extern void _ZN9S17824C203v28Ev();
+extern void _ZN9S17824C193v29Ev();
+extern void _ZN9S17824C183v25Ev();
+static  VTBL_ENTRY vtc_S17824C18[] = {
+  0,
+  (VTBL_ENTRY)&(_ZTI9S17824C18[0]),
+  (VTBL_ENTRY)&_ZN9S17824C18D1Ev,
+  (VTBL_ENTRY)&_ZN9S17824C18D0Ev,
+  (VTBL_ENTRY)&_ZN8S17824C52v4Ev,
+  (VTBL_ENTRY)&_ZN8S17824C52v5Ev,
+  (VTBL_ENTRY)&_ZN8S17824C52v6Ev,
+  (VTBL_ENTRY)&_ZN8S17824C52v7Ev,
+  (VTBL_ENTRY)&_ZN8S17824C52v8Ev,
+  (VTBL_ENTRY)&_ZN8S17824C52v9Ev,
+  (VTBL_ENTRY)&_ZN8S17824C53v10Ev,
+  (VTBL_ENTRY)&_ZN9S17824C203v26Ev,
+  (VTBL_ENTRY)&_ZN9S17824C203v27Ev,
+  (VTBL_ENTRY)&_ZN9S17824C203v28Ev,
+  (VTBL_ENTRY)&_ZN9S17824C193v29Ev,
+  (VTBL_ENTRY)&_ZN9S17824C183v25Ev,
+};
+extern VTBL_ENTRY _ZTI9S17824C18[];
+extern  VTBL_ENTRY _ZTV9S17824C18[];
+Class_Descriptor cd_S17824C18 = {  "S17824C18", // class name
+  bases_S17824C18, 3,
+  &(vtc_S17824C18[0]), // expected_vtbl_contents
+  0, //no vtt
+  ABISELECT(800,576), // object size
+  NSPAIRA(_ZTI9S17824C18),ABISELECT(24,12), //typeinfo_var
+  NSPAIRA(_ZTV9S17824C18),16, //virtual function table var
+  2, // offset into main vftv pointed to by object[0]
+  {0,0},0, // virtual table table var
+  3, // n_initialized_bases
+  0, // has_virtual_bases
+  1, // has_class_type_fields
+  0, // alt-thunk-names
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S17824C29  : S17824C18 {
+  virtual void  v30(); // _ZN9S17824C293v30Ev
+  ~S17824C29(); // tgen
+  S17824C29(); // tgen
+};
+//SIG(-1 S17824C29) C1{ BC2{ BC3{ BC4{ BC5{ vd v2 v3 v4 v5 v6 v7 v8 FC6{ m Fp[3]} Fi:1} v9 v10 v11 FC7{ m FC8{ Fp Fi[2]}[16] Fi} FC7 FC9{ m Fp} FC9 FC9 FC9 FC9 FC10{ m FC11{ Fc[3] Fi} Fi[2]}} v12 FC12{ FC13{ m Fp Fc[3] Fi} FC13[3] FC13 FC14{ m FC13[4] Fi} FC13} Fp} v13} v1}
+
+
+void  S17824C29 ::v30(){vfunc_called(this, "_ZN9S17824C293v30Ev");}
+S17824C29 ::~S17824C29(){ note_dtor("S17824C29", this);} // tgen
+S17824C29 ::S17824C29(){ note_ctor("S17824C29", this);} // tgen
+
+static void Test_S17824C29()
+{
+  extern Class_Descriptor cd_S17824C29;
+  void *lvp;
+  {
+    ABISELECT(double,int) buf[ABISELECT(101,145)];
+    init_test(&cd_S17824C29, buf);
+    S17824C29 *dp, &lv = *(dp=new (buf) S17824C29());
+    lvp = (void*)&lv;
+    check2(sizeof(lv), ABISELECT(800,576), "sizeof(S17824C29)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S17824C29)");
+    check_base_class_offset(lv, (S17824C5*)(S17824C20*)(S17824C19*)(S17824C18*), 0, "S17824C29");
+    check_base_class_offset(lv, (S17824C20*)(S17824C19*)(S17824C18*), 0, "S17824C29");
+    check_base_class_offset(lv, (S17824C19*)(S17824C18*), 0, "S17824C29");
+    check_base_class_offset(lv, (S17824C18*), 0, "S17824C29");
+    test_class_info(&lv, &cd_S17824C29);
+    dp->~S17824C29();
+  }
+  Check_Ctor_Dtor_Calls(lvp);
+}
+static Arrange_To_Call_Me vS17824C29(Test_S17824C29, "S17824C29", ABISELECT(800,576));
+
+#else // __cplusplus
+
+extern void _ZN9S17824C29C1Ev();
+extern void _ZN9S17824C29D1Ev();
+Name_Map name_map_S17824C29[] = {
+  NSPAIR(_ZN9S17824C29C1Ev),
+  NSPAIR(_ZN9S17824C29D1Ev),
+  {0,0}
+};
+extern Class_Descriptor cd_S17824C5;
+extern VTBL_ENTRY _ZTI8S17824C5[];
+extern  VTBL_ENTRY _ZTV8S17824C5[];
+extern Class_Descriptor cd_S17824C20;
+extern VTBL_ENTRY _ZTI9S17824C20[];
+extern  VTBL_ENTRY _ZTV9S17824C20[];
+extern Class_Descriptor cd_S17824C19;
+extern VTBL_ENTRY _ZTI9S17824C19[];
+extern  VTBL_ENTRY _ZTV9S17824C19[];
+extern Class_Descriptor cd_S17824C18;
+extern VTBL_ENTRY _ZTI9S17824C18[];
+extern  VTBL_ENTRY _ZTV9S17824C18[];
+static Base_Class bases_S17824C29[] = {
+  // ofst, vfto, nneg, vtt_idx, base_vtt_idx, init_seq, direct, virtual
+  {&cd_S17824C5,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    1, //init_seq
+    1, //immediately_derived
+  0, 0},
+  {&cd_S17824C20,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    2, //init_seq
+    2, //immediately_derived
+  0, 0},
+  {&cd_S17824C19,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    3, //init_seq
+    3, //immediately_derived
+  0, 0},
+  {&cd_S17824C18,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    4, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {0}};
+extern VTBL_ENTRY _ZTI9S17824C29[];
+extern void _ZN9S17824C29D1Ev();
+extern void _ZN9S17824C29D0Ev();
+extern void _ZN8S17824C52v4Ev();
+extern void _ZN8S17824C52v5Ev();
+extern void _ZN8S17824C52v6Ev();
+extern void _ZN8S17824C52v7Ev();
+extern void _ZN8S17824C52v8Ev();
+extern void _ZN8S17824C52v9Ev();
+extern void _ZN8S17824C53v10Ev();
+extern void _ZN9S17824C203v26Ev();
+extern void _ZN9S17824C203v27Ev();
+extern void _ZN9S17824C203v28Ev();
+extern void _ZN9S17824C193v29Ev();
+extern void _ZN9S17824C183v25Ev();
+extern void _ZN9S17824C293v30Ev();
+static  VTBL_ENTRY vtc_S17824C29[] = {
+  0,
+  (VTBL_ENTRY)&(_ZTI9S17824C29[0]),
+  (VTBL_ENTRY)&_ZN9S17824C29D1Ev,
+  (VTBL_ENTRY)&_ZN9S17824C29D0Ev,
+  (VTBL_ENTRY)&_ZN8S17824C52v4Ev,
+  (VTBL_ENTRY)&_ZN8S17824C52v5Ev,
+  (VTBL_ENTRY)&_ZN8S17824C52v6Ev,
+  (VTBL_ENTRY)&_ZN8S17824C52v7Ev,
+  (VTBL_ENTRY)&_ZN8S17824C52v8Ev,
+  (VTBL_ENTRY)&_ZN8S17824C52v9Ev,
+  (VTBL_ENTRY)&_ZN8S17824C53v10Ev,
+  (VTBL_ENTRY)&_ZN9S17824C203v26Ev,
+  (VTBL_ENTRY)&_ZN9S17824C203v27Ev,
+  (VTBL_ENTRY)&_ZN9S17824C203v28Ev,
+  (VTBL_ENTRY)&_ZN9S17824C193v29Ev,
+  (VTBL_ENTRY)&_ZN9S17824C183v25Ev,
+  (VTBL_ENTRY)&_ZN9S17824C293v30Ev,
+};
+extern VTBL_ENTRY _ZTI9S17824C29[];
+extern  VTBL_ENTRY _ZTV9S17824C29[];
+Class_Descriptor cd_S17824C29 = {  "S17824C29", // class name
+  bases_S17824C29, 4,
+  &(vtc_S17824C29[0]), // expected_vtbl_contents
+  0, //no vtt
+  ABISELECT(800,576), // object size
+  NSPAIRA(_ZTI9S17824C29),ABISELECT(24,12), //typeinfo_var
+  NSPAIRA(_ZTV9S17824C29),17, //virtual function table var
+  2, // offset into main vftv pointed to by object[0]
+  {0,0},0, // virtual table table var
+  4, // n_initialized_bases
+  0, // has_virtual_bases
+  1, // has_class_type_fields
+  0, // alt-thunk-names
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S17824C30  : S17824C29 {
+  virtual void  v31(); // _ZN9S17824C303v31Ev
+  ~S17824C30(); // tgen
+  S17824C30(); // tgen
+};
+//SIG(-1 S17824C30) C1{ BC2{ BC3{ BC4{ BC5{ BC6{ vd v2 v3 v4 v5 v6 v7 v8 FC7{ m Fp[3]} Fi:1} v9 v10 v11 FC8{ m FC9{ Fp Fi[2]}[16] Fi} FC8 FC10{ m Fp} FC10 FC10 FC10 FC10 FC11{ m FC12{ Fc[3] Fi} Fi[2]}} v12 FC13{ FC14{ m Fp Fc[3] Fi} FC14[3] FC14 FC15{ m FC14[4] Fi} FC14} Fp} v13} v14} v1}
+
+
+void  S17824C30 ::v31(){vfunc_called(this, "_ZN9S17824C303v31Ev");}
+S17824C30 ::~S17824C30(){ note_dtor("S17824C30", this);} // tgen
+S17824C30 ::S17824C30(){ note_ctor("S17824C30", this);} // tgen
+
+static void Test_S17824C30()
+{
+  extern Class_Descriptor cd_S17824C30;
+  void *lvp;
+  {
+    ABISELECT(double,int) buf[ABISELECT(101,145)];
+    init_test(&cd_S17824C30, buf);
+    S17824C30 *dp, &lv = *(dp=new (buf) S17824C30());
+    lvp = (void*)&lv;
+    check2(sizeof(lv), ABISELECT(800,576), "sizeof(S17824C30)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S17824C30)");
+    check_base_class_offset(lv, (S17824C5*)(S17824C20*)(S17824C19*)(S17824C18*)(S17824C29*), 0, "S17824C30");
+    check_base_class_offset(lv, (S17824C20*)(S17824C19*)(S17824C18*)(S17824C29*), 0, "S17824C30");
+    check_base_class_offset(lv, (S17824C19*)(S17824C18*)(S17824C29*), 0, "S17824C30");
+    check_base_class_offset(lv, (S17824C18*)(S17824C29*), 0, "S17824C30");
+    check_base_class_offset(lv, (S17824C29*), 0, "S17824C30");
+    test_class_info(&lv, &cd_S17824C30);
+    dp->~S17824C30();
+  }
+  Check_Ctor_Dtor_Calls(lvp);
+}
+static Arrange_To_Call_Me vS17824C30(Test_S17824C30, "S17824C30", ABISELECT(800,576));
+
+#else // __cplusplus
+
+extern void _ZN9S17824C30C1Ev();
+extern void _ZN9S17824C30D1Ev();
+Name_Map name_map_S17824C30[] = {
+  NSPAIR(_ZN9S17824C30C1Ev),
+  NSPAIR(_ZN9S17824C30D1Ev),
+  {0,0}
+};
+extern Class_Descriptor cd_S17824C5;
+extern VTBL_ENTRY _ZTI8S17824C5[];
+extern  VTBL_ENTRY _ZTV8S17824C5[];
+extern Class_Descriptor cd_S17824C20;
+extern VTBL_ENTRY _ZTI9S17824C20[];
+extern  VTBL_ENTRY _ZTV9S17824C20[];
+extern Class_Descriptor cd_S17824C19;
+extern VTBL_ENTRY _ZTI9S17824C19[];
+extern  VTBL_ENTRY _ZTV9S17824C19[];
+extern Class_Descriptor cd_S17824C18;
+extern VTBL_ENTRY _ZTI9S17824C18[];
+extern  VTBL_ENTRY _ZTV9S17824C18[];
+extern Class_Descriptor cd_S17824C29;
+extern VTBL_ENTRY _ZTI9S17824C29[];
+extern  VTBL_ENTRY _ZTV9S17824C29[];
+static Base_Class bases_S17824C30[] = {
+  // ofst, vfto, nneg, vtt_idx, base_vtt_idx, init_seq, direct, virtual
+  {&cd_S17824C5,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    1, //init_seq
+    1, //immediately_derived
+  0, 0},
+  {&cd_S17824C20,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    2, //init_seq
+    2, //immediately_derived
+  0, 0},
+  {&cd_S17824C19,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    3, //init_seq
+    3, //immediately_derived
+  0, 0},
+  {&cd_S17824C18,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    4, //init_seq
+    4, //immediately_derived
+  0, 0},
+  {&cd_S17824C29,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    5, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {0}};
+extern VTBL_ENTRY _ZTI9S17824C30[];
+extern void _ZN9S17824C30D1Ev();
+extern void _ZN9S17824C30D0Ev();
+extern void _ZN8S17824C52v4Ev();
+extern void _ZN8S17824C52v5Ev();
+extern void _ZN8S17824C52v6Ev();
+extern void _ZN8S17824C52v7Ev();
+extern void _ZN8S17824C52v8Ev();
+extern void _ZN8S17824C52v9Ev();
+extern void _ZN8S17824C53v10Ev();
+extern void _ZN9S17824C203v26Ev();
+extern void _ZN9S17824C203v27Ev();
+extern void _ZN9S17824C203v28Ev();
+extern void _ZN9S17824C193v29Ev();
+extern void _ZN9S17824C183v25Ev();
+extern void _ZN9S17824C293v30Ev();
+extern void _ZN9S17824C303v31Ev();
+static  VTBL_ENTRY vtc_S17824C30[] = {
+  0,
+  (VTBL_ENTRY)&(_ZTI9S17824C30[0]),
+  (VTBL_ENTRY)&_ZN9S17824C30D1Ev,
+  (VTBL_ENTRY)&_ZN9S17824C30D0Ev,
+  (VTBL_ENTRY)&_ZN8S17824C52v4Ev,
+  (VTBL_ENTRY)&_ZN8S17824C52v5Ev,
+  (VTBL_ENTRY)&_ZN8S17824C52v6Ev,
+  (VTBL_ENTRY)&_ZN8S17824C52v7Ev,
+  (VTBL_ENTRY)&_ZN8S17824C52v8Ev,
+  (VTBL_ENTRY)&_ZN8S17824C52v9Ev,
+  (VTBL_ENTRY)&_ZN8S17824C53v10Ev,
+  (VTBL_ENTRY)&_ZN9S17824C203v26Ev,
+  (VTBL_ENTRY)&_ZN9S17824C203v27Ev,
+  (VTBL_ENTRY)&_ZN9S17824C203v28Ev,
+  (VTBL_ENTRY)&_ZN9S17824C193v29Ev,
+  (VTBL_ENTRY)&_ZN9S17824C183v25Ev,
+  (VTBL_ENTRY)&_ZN9S17824C293v30Ev,
+  (VTBL_ENTRY)&_ZN9S17824C303v31Ev,
+};
+extern VTBL_ENTRY _ZTI9S17824C30[];
+extern  VTBL_ENTRY _ZTV9S17824C30[];
+Class_Descriptor cd_S17824C30 = {  "S17824C30", // class name
+  bases_S17824C30, 5,
+  &(vtc_S17824C30[0]), // expected_vtbl_contents
+  0, //no vtt
+  ABISELECT(800,576), // object size
+  NSPAIRA(_ZTI9S17824C30),ABISELECT(24,12), //typeinfo_var
+  NSPAIRA(_ZTV9S17824C30),18, //virtual function table var
+  2, // offset into main vftv pointed to by object[0]
+  {0,0},0, // virtual table table var
+  5, // n_initialized_bases
+  0, // has_virtual_bases
+  1, // has_class_type_fields
+  0, // alt-thunk-names
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S17824C31  : S17824C19 {
+  virtual void  v32(); // _ZN9S17824C313v32Ev
+  ~S17824C31(); // tgen
+  S17824C31(); // tgen
+};
+//SIG(-1 S17824C31) C1{ BC2{ BC3{ BC4{ vd v2 v3 v4 v5 v6 v7 v8 FC5{ m Fp[3]} Fi:1} v9 v10 v11 FC6{ m FC7{ Fp Fi[2]}[16] Fi} FC6 FC8{ m Fp} FC8 FC8 FC8 FC8 FC9{ m FC10{ Fc[3] Fi} Fi[2]}} v12 FC11{ FC12{ m Fp Fc[3] Fi} FC12[3] FC12 FC13{ m FC12[4] Fi} FC12} Fp} v1}
+
+
+void  S17824C31 ::v32(){vfunc_called(this, "_ZN9S17824C313v32Ev");}
+S17824C31 ::~S17824C31(){ note_dtor("S17824C31", this);} // tgen
+S17824C31 ::S17824C31(){ note_ctor("S17824C31", this);} // tgen
+
+static void Test_S17824C31()
+{
+  extern Class_Descriptor cd_S17824C31;
+  void *lvp;
+  {
+    ABISELECT(double,int) buf[ABISELECT(101,145)];
+    init_test(&cd_S17824C31, buf);
+    S17824C31 *dp, &lv = *(dp=new (buf) S17824C31());
+    lvp = (void*)&lv;
+    check2(sizeof(lv), ABISELECT(800,576), "sizeof(S17824C31)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S17824C31)");
+    check_base_class_offset(lv, (S17824C5*)(S17824C20*)(S17824C19*), 0, "S17824C31");
+    check_base_class_offset(lv, (S17824C20*)(S17824C19*), 0, "S17824C31");
+    check_base_class_offset(lv, (S17824C19*), 0, "S17824C31");
+    test_class_info(&lv, &cd_S17824C31);
+    dp->~S17824C31();
+  }
+  Check_Ctor_Dtor_Calls(lvp);
+}
+static Arrange_To_Call_Me vS17824C31(Test_S17824C31, "S17824C31", ABISELECT(800,576));
+
+#else // __cplusplus
+
+extern void _ZN9S17824C31C1Ev();
+extern void _ZN9S17824C31D1Ev();
+Name_Map name_map_S17824C31[] = {
+  NSPAIR(_ZN9S17824C31C1Ev),
+  NSPAIR(_ZN9S17824C31D1Ev),
+  {0,0}
+};
+extern Class_Descriptor cd_S17824C5;
+extern VTBL_ENTRY _ZTI8S17824C5[];
+extern  VTBL_ENTRY _ZTV8S17824C5[];
+extern Class_Descriptor cd_S17824C20;
+extern VTBL_ENTRY _ZTI9S17824C20[];
+extern  VTBL_ENTRY _ZTV9S17824C20[];
+extern Class_Descriptor cd_S17824C19;
+extern VTBL_ENTRY _ZTI9S17824C19[];
+extern  VTBL_ENTRY _ZTV9S17824C19[];
+static Base_Class bases_S17824C31[] = {
+  // ofst, vfto, nneg, vtt_idx, base_vtt_idx, init_seq, direct, virtual
+  {&cd_S17824C5,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    1, //init_seq
+    1, //immediately_derived
+  0, 0},
+  {&cd_S17824C20,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    2, //init_seq
+    2, //immediately_derived
+  0, 0},
+  {&cd_S17824C19,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    3, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {0}};
+extern VTBL_ENTRY _ZTI9S17824C31[];
+extern void _ZN9S17824C31D1Ev();
+extern void _ZN9S17824C31D0Ev();
+extern void _ZN8S17824C52v4Ev();
+extern void _ZN8S17824C52v5Ev();
+extern void _ZN8S17824C52v6Ev();
+extern void _ZN8S17824C52v7Ev();
+extern void _ZN8S17824C52v8Ev();
+extern void _ZN8S17824C52v9Ev();
+extern void _ZN8S17824C53v10Ev();
+extern void _ZN9S17824C203v26Ev();
+extern void _ZN9S17824C203v27Ev();
+extern void _ZN9S17824C203v28Ev();
+extern void _ZN9S17824C193v29Ev();
+extern void _ZN9S17824C313v32Ev();
+static  VTBL_ENTRY vtc_S17824C31[] = {
+  0,
+  (VTBL_ENTRY)&(_ZTI9S17824C31[0]),
+  (VTBL_ENTRY)&_ZN9S17824C31D1Ev,
+  (VTBL_ENTRY)&_ZN9S17824C31D0Ev,
+  (VTBL_ENTRY)&_ZN8S17824C52v4Ev,
+  (VTBL_ENTRY)&_ZN8S17824C52v5Ev,
+  (VTBL_ENTRY)&_ZN8S17824C52v6Ev,
+  (VTBL_ENTRY)&_ZN8S17824C52v7Ev,
+  (VTBL_ENTRY)&_ZN8S17824C52v8Ev,
+  (VTBL_ENTRY)&_ZN8S17824C52v9Ev,
+  (VTBL_ENTRY)&_ZN8S17824C53v10Ev,
+  (VTBL_ENTRY)&_ZN9S17824C203v26Ev,
+  (VTBL_ENTRY)&_ZN9S17824C203v27Ev,
+  (VTBL_ENTRY)&_ZN9S17824C203v28Ev,
+  (VTBL_ENTRY)&_ZN9S17824C193v29Ev,
+  (VTBL_ENTRY)&_ZN9S17824C313v32Ev,
+};
+extern VTBL_ENTRY _ZTI9S17824C31[];
+extern  VTBL_ENTRY _ZTV9S17824C31[];
+Class_Descriptor cd_S17824C31 = {  "S17824C31", // class name
+  bases_S17824C31, 3,
+  &(vtc_S17824C31[0]), // expected_vtbl_contents
+  0, //no vtt
+  ABISELECT(800,576), // object size
+  NSPAIRA(_ZTI9S17824C31),ABISELECT(24,12), //typeinfo_var
+  NSPAIRA(_ZTV9S17824C31),16, //virtual function table var
+  2, // offset into main vftv pointed to by object[0]
+  {0,0},0, // virtual table table var
+  3, // n_initialized_bases
+  0, // has_virtual_bases
+  1, // has_class_type_fields
+  0, // alt-thunk-names
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S17824C34  {
+  void *s17824c34f0;
+  void  mf17824c34(); // _ZN9S17824C3410mf17824c34Ev
+};
+//SIG(-1 S17824C34) C1{ m Fp}
+
+
+void  S17824C34 ::mf17824c34(){}
+
+static void Test_S17824C34()
+{
+  {
+    init_simple_test("S17824C34");
+    S17824C34 lv;
+    check2(sizeof(lv), ABISELECT(8,4), "sizeof(S17824C34)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S17824C34)");
+    check_field_offset(lv, s17824c34f0, 0, "S17824C34.s17824c34f0");
+  }
+}
+static Arrange_To_Call_Me vS17824C34(Test_S17824C34, "S17824C34", ABISELECT(8,4));
+
+#else // __cplusplus
+
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S17824C33  : S17824C5 {
+  ::S17824C34 s17824c33f0;
+  virtual  ~S17824C33(); // _ZN9S17824C33D1Ev
+  virtual void  v34(); // _ZN9S17824C333v34Ev
+  virtual void  v35(); // _ZN9S17824C333v35Ev
+  S17824C33(); // tgen
+};
+//SIG(-1 S17824C33) C1{ BC2{ vd v3 v4 v5 v6 v7 v8 v9 FC3{ m Fp[3]} Fi:1} vd v1 v2 FC4{ m Fp}}
+
+
+ S17824C33 ::~S17824C33(){ note_dtor("S17824C33", this);}
+void  S17824C33 ::v34(){vfunc_called(this, "_ZN9S17824C333v34Ev");}
+void  S17824C33 ::v35(){vfunc_called(this, "_ZN9S17824C333v35Ev");}
+S17824C33 ::S17824C33(){ note_ctor("S17824C33", this);} // tgen
+
+static void Test_S17824C33()
+{
+  extern Class_Descriptor cd_S17824C33;
+  void *lvp;
+  {
+    ABISELECT(double,int) buf[7];
+    init_test(&cd_S17824C33, buf);
+    S17824C33 *dp, &lv = *(dp=new (buf) S17824C33());
+    lvp = (void*)&lv;
+    check2(sizeof(lv), ABISELECT(48,24), "sizeof(S17824C33)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S17824C33)");
+    check_base_class_offset(lv, (S17824C5*), 0, "S17824C33");
+    check_field_offset(lv, s17824c33f0, ABISELECT(40,20), "S17824C33.s17824c33f0");
+    test_class_info(&lv, &cd_S17824C33);
+    dp->~S17824C33();
+  }
+  Check_Ctor_Dtor_Calls(lvp);
+}
+static Arrange_To_Call_Me vS17824C33(Test_S17824C33, "S17824C33", ABISELECT(48,24));
+
+#else // __cplusplus
+
+extern void _ZN9S17824C33C1Ev();
+extern void _ZN9S17824C33D1Ev();
+Name_Map name_map_S17824C33[] = {
+  NSPAIR(_ZN9S17824C33C1Ev),
+  NSPAIR(_ZN9S17824C33D1Ev),
+  {0,0}
+};
+extern Class_Descriptor cd_S17824C5;
+extern VTBL_ENTRY _ZTI8S17824C5[];
+extern  VTBL_ENTRY _ZTV8S17824C5[];
+static Base_Class bases_S17824C33[] = {
+  // ofst, vfto, nneg, vtt_idx, base_vtt_idx, init_seq, direct, virtual
+  {&cd_S17824C5,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    1, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {0}};
+extern VTBL_ENTRY _ZTI9S17824C33[];
+extern void _ZN9S17824C33D1Ev();
+extern void _ZN9S17824C33D0Ev();
+extern void _ZN8S17824C52v4Ev();
+extern void _ZN8S17824C52v5Ev();
+extern void _ZN8S17824C52v6Ev();
+extern void _ZN8S17824C52v7Ev();
+extern void _ZN8S17824C52v8Ev();
+extern void _ZN8S17824C52v9Ev();
+extern void _ZN8S17824C53v10Ev();
+extern void _ZN9S17824C333v34Ev();
+extern void _ZN9S17824C333v35Ev();
+static  VTBL_ENTRY vtc_S17824C33[] = {
+  0,
+  (VTBL_ENTRY)&(_ZTI9S17824C33[0]),
+  (VTBL_ENTRY)&_ZN9S17824C33D1Ev,
+  (VTBL_ENTRY)&_ZN9S17824C33D0Ev,
+  (VTBL_ENTRY)&_ZN8S17824C52v4Ev,
+  (VTBL_ENTRY)&_ZN8S17824C52v5Ev,
+  (VTBL_ENTRY)&_ZN8S17824C52v6Ev,
+  (VTBL_ENTRY)&_ZN8S17824C52v7Ev,
+  (VTBL_ENTRY)&_ZN8S17824C52v8Ev,
+  (VTBL_ENTRY)&_ZN8S17824C52v9Ev,
+  (VTBL_ENTRY)&_ZN8S17824C53v10Ev,
+  (VTBL_ENTRY)&_ZN9S17824C333v34Ev,
+  (VTBL_ENTRY)&_ZN9S17824C333v35Ev,
+};
+extern VTBL_ENTRY _ZTI9S17824C33[];
+extern  VTBL_ENTRY _ZTV9S17824C33[];
+Class_Descriptor cd_S17824C33 = {  "S17824C33", // class name
+  bases_S17824C33, 1,
+  &(vtc_S17824C33[0]), // expected_vtbl_contents
+  0, //no vtt
+  ABISELECT(48,24), // object size
+  NSPAIRA(_ZTI9S17824C33),ABISELECT(24,12), //typeinfo_var
+  NSPAIRA(_ZTV9S17824C33),13, //virtual function table var
+  2, // offset into main vftv pointed to by object[0]
+  {0,0},0, // virtual table table var
+  1, // n_initialized_bases
+  0, // has_virtual_bases
+  1, // has_class_type_fields
+  0, // alt-thunk-names
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S17824C32  : S17824C33 {
+  ::S6491C10 s17824c32f0;
+  virtual void  v33(); // _ZN9S17824C323v33Ev
+  ~S17824C32(); // tgen
+  S17824C32(); // tgen
+};
+//SIG(-1 S17824C32) C1{ BC2{ BC3{ vd v2 v3 v4 v5 v6 v7 v8 FC4{ m Fp[3]} Fi:1} vd v9 v10 FC5{ m Fp}} v1 FC6{ BC7{ m Fp Fi[2]}}}
+
+
+void  S17824C32 ::v33(){vfunc_called(this, "_ZN9S17824C323v33Ev");}
+S17824C32 ::~S17824C32(){ note_dtor("S17824C32", this);} // tgen
+S17824C32 ::S17824C32(){ note_ctor("S17824C32", this);} // tgen
+
+static void Test_S17824C32()
+{
+  extern Class_Descriptor cd_S17824C32;
+  void *lvp;
+  {
+    ABISELECT(double,int) buf[ABISELECT(9,10)];
+    init_test(&cd_S17824C32, buf);
+    S17824C32 *dp, &lv = *(dp=new (buf) S17824C32());
+    lvp = (void*)&lv;
+    check2(sizeof(lv), ABISELECT(64,36), "sizeof(S17824C32)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S17824C32)");
+    check_base_class_offset(lv, (S17824C5*)(S17824C33*), 0, "S17824C32");
+    check_base_class_offset(lv, (S17824C33*), 0, "S17824C32");
+    check_field_offset(lv, s17824c32f0, ABISELECT(48,24), "S17824C32.s17824c32f0");
+    test_class_info(&lv, &cd_S17824C32);
+    dp->~S17824C32();
+  }
+  Check_Ctor_Dtor_Calls(lvp);
+}
+static Arrange_To_Call_Me vS17824C32(Test_S17824C32, "S17824C32", ABISELECT(64,36));
+
+#else // __cplusplus
+
+extern void _ZN9S17824C32C1Ev();
+extern void _ZN9S17824C32D1Ev();
+Name_Map name_map_S17824C32[] = {
+  NSPAIR(_ZN9S17824C32C1Ev),
+  NSPAIR(_ZN9S17824C32D1Ev),
+  {0,0}
+};
+extern Class_Descriptor cd_S17824C5;
+extern VTBL_ENTRY _ZTI8S17824C5[];
+extern  VTBL_ENTRY _ZTV8S17824C5[];
+extern Class_Descriptor cd_S17824C33;
+extern VTBL_ENTRY _ZTI9S17824C33[];
+extern  VTBL_ENTRY _ZTV9S17824C33[];
+static Base_Class bases_S17824C32[] = {
+  // ofst, vfto, nneg, vtt_idx, base_vtt_idx, init_seq, direct, virtual
+  {&cd_S17824C5,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    1, //init_seq
+    1, //immediately_derived
+  0, 0},
+  {&cd_S17824C33,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    2, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {0}};
+extern VTBL_ENTRY _ZTI9S17824C32[];
+extern void _ZN9S17824C32D1Ev();
+extern void _ZN9S17824C32D0Ev();
+extern void _ZN8S17824C52v4Ev();
+extern void _ZN8S17824C52v5Ev();
+extern void _ZN8S17824C52v6Ev();
+extern void _ZN8S17824C52v7Ev();
+extern void _ZN8S17824C52v8Ev();
+extern void _ZN8S17824C52v9Ev();
+extern void _ZN8S17824C53v10Ev();
+extern void _ZN9S17824C333v34Ev();
+extern void _ZN9S17824C333v35Ev();
+extern void _ZN9S17824C323v33Ev();
+static  VTBL_ENTRY vtc_S17824C32[] = {
+  0,
+  (VTBL_ENTRY)&(_ZTI9S17824C32[0]),
+  (VTBL_ENTRY)&_ZN9S17824C32D1Ev,
+  (VTBL_ENTRY)&_ZN9S17824C32D0Ev,
+  (VTBL_ENTRY)&_ZN8S17824C52v4Ev,
+  (VTBL_ENTRY)&_ZN8S17824C52v5Ev,
+  (VTBL_ENTRY)&_ZN8S17824C52v6Ev,
+  (VTBL_ENTRY)&_ZN8S17824C52v7Ev,
+  (VTBL_ENTRY)&_ZN8S17824C52v8Ev,
+  (VTBL_ENTRY)&_ZN8S17824C52v9Ev,
+  (VTBL_ENTRY)&_ZN8S17824C53v10Ev,
+  (VTBL_ENTRY)&_ZN9S17824C333v34Ev,
+  (VTBL_ENTRY)&_ZN9S17824C333v35Ev,
+  (VTBL_ENTRY)&_ZN9S17824C323v33Ev,
+};
+extern VTBL_ENTRY _ZTI9S17824C32[];
+extern  VTBL_ENTRY _ZTV9S17824C32[];
+Class_Descriptor cd_S17824C32 = {  "S17824C32", // class name
+  bases_S17824C32, 2,
+  &(vtc_S17824C32[0]), // expected_vtbl_contents
+  0, //no vtt
+  ABISELECT(64,36), // object size
+  NSPAIRA(_ZTI9S17824C32),ABISELECT(24,12), //typeinfo_var
+  NSPAIRA(_ZTV9S17824C32),14, //virtual function table var
+  2, // offset into main vftv pointed to by object[0]
+  {0,0},0, // virtual table table var
+  2, // n_initialized_bases
+  0, // has_virtual_bases
+  1, // has_class_type_fields
+  0, // alt-thunk-names
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S17824C37  {
+  void *s17824c37f0[3];
+  int s17824c37f1;
+  void *s17824c37f2;
+  int s17824c37f3;
+  void *s17824c37f4[2];
+  ::S2261C30 s17824c37f5;
+  ::S2261C30 s17824c37f6;
+  int s17824c37f7[10];
+  void *s17824c37f8;
+  unsigned int s17824c37f9:1;
+  unsigned int s17824c37f10:1;
+  unsigned int s17824c37f11:1;
+  unsigned int s17824c37f12:1;
+  int s17824c37f13:3;
+  int s17824c37f14:2;
+  int s17824c37f15:3;
+  unsigned int s17824c37f16:1;
+  unsigned int s17824c37f17:1;
+  void  mf17824c37(); // _ZN9S17824C3710mf17824c37Ev
+};
+//SIG(-1 S17824C37) C1{ m Fp[3] Fi Fp Fi Fp[2] FC2{ m} FC2 Fi[10] Fp Fi:1 Fi:1 Fi:1 Fi:1 Fi:3 Fi:2 Fi:3 Fi:1 Fi:1}
+
+
+void  S17824C37 ::mf17824c37(){}
+
+static void Test_S17824C37()
+{
+  {
+    init_simple_test("S17824C37");
+    static S17824C37 lv;
+    check2(sizeof(lv), ABISELECT(128,84), "sizeof(S17824C37)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S17824C37)");
+    check_field_offset(lv, s17824c37f0, 0, "S17824C37.s17824c37f0");
+    check_field_offset(lv, s17824c37f1, ABISELECT(24,12), "S17824C37.s17824c37f1");
+    check_field_offset(lv, s17824c37f2, ABISELECT(32,16), "S17824C37.s17824c37f2");
+    check_field_offset(lv, s17824c37f3, ABISELECT(40,20), "S17824C37.s17824c37f3");
+    check_field_offset(lv, s17824c37f4, ABISELECT(48,24), "S17824C37.s17824c37f4");
+    check_field_offset(lv, s17824c37f5, ABISELECT(64,32), "S17824C37.s17824c37f5");
+    check_field_offset(lv, s17824c37f6, ABISELECT(65,33), "S17824C37.s17824c37f6");
+    check_field_offset(lv, s17824c37f7, ABISELECT(68,36), "S17824C37.s17824c37f7");
+    check_field_offset(lv, s17824c37f8, ABISELECT(112,76), "S17824C37.s17824c37f8");
+    set_bf_and_test(lv, s17824c37f9, ABISELECT(120,80), 0, 1, 1, "S17824C37");
+    set_bf_and_test(lv, s17824c37f10, ABISELECT(120,80), 1, 1, 1, "S17824C37");
+    set_bf_and_test(lv, s17824c37f11, ABISELECT(120,80), 2, 1, 1, "S17824C37");
+    set_bf_and_test(lv, s17824c37f12, ABISELECT(120,80), 3, 1, 1, "S17824C37");
+    set_bf_and_test(lv, s17824c37f13, ABISELECT(120,80), 4, 3, 1, "S17824C37");
+    set_bf_and_test(lv, s17824c37f13, ABISELECT(120,80), 4, 3, hide_sll(1LL<<2), "S17824C37");
+    set_bf_and_test(lv, s17824c37f14, ABISELECT(120,80), 7, 2, 1, "S17824C37");
+    set_bf_and_test(lv, s17824c37f14, ABISELECT(120,80), 7, 2, hide_sll(1LL<<1), "S17824C37");
+    set_bf_and_test(lv, s17824c37f15, ABISELECT(121,81), 1, 3, 1, "S17824C37");
+    set_bf_and_test(lv, s17824c37f15, ABISELECT(121,81), 1, 3, hide_sll(1LL<<2), "S17824C37");
+    set_bf_and_test(lv, s17824c37f16, ABISELECT(121,81), 4, 1, 1, "S17824C37");
+    set_bf_and_test(lv, s17824c37f17, ABISELECT(121,81), 5, 1, 1, "S17824C37");
+  }
+}
+static Arrange_To_Call_Me vS17824C37(Test_S17824C37, "S17824C37", ABISELECT(128,84));
+
+#else // __cplusplus
+
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S17824C1  {
+  void *s17824c1f0;
+  int s17824c1f1[6];
+  void *s17824c1f2;
+  ::S6491C21_nt s17824c1f3;
+  ::S17824C3 s17824c1f4;
+  ::S17824C3 s17824c1f5;
+  ::S17824C3 s17824c1f6;
+  ::S17824C12 s17824c1f7;
+  ::S17824C3 s17824c1f8;
+  ::S17824C12 s17824c1f9;
+  ::S17824C3 s17824c1f10;
+  ::S17824C16 s17824c1f11;
+  ::S17824C18 s17824c1f12;
+  ::S17824C29 s17824c1f13;
+  ::S17824C30 s17824c1f14;
+  ::S17824C31 s17824c1f15;
+  ::S17824C32 s17824c1f16;
+  ::S6491C5 s17824c1f17;
+  ::S6491C5 s17824c1f18;
+  ::S6491C5 s17824c1f19;
+  ::S6491C5 s17824c1f20;
+  ::S17824C37 s17824c1f21;
+  ::S6491C40_nt s17824c1f22;
+  ::S485C29_nt s17824c1f23;
+  ::S485C29_nt s17824c1f24;
+  int s17824c1f25[8];
+  ::S485C6_nt s17824c1f26;
+  int s17824c1f27[2];
+  void  mf17824c1(); // _ZN8S17824C19mf17824c1Ev
+};
+//SIG(1 S17824C1) C1{ m Fp Fi[6] Fp FC2{ m Fp} FC3{ BC4{ BC5{ vd v4 v5 v6 v7 v8 v9 v10 FC6{ m Fp[3]} Fi:1} vd v11 v12 FC7{ m Fp}} v1 v2 v3 FC8{ BC9{ m Fp Fi[2]}}} FC3 FC3 FC10{ BC4 v13 v14 v15 FC11{ BC9}} FC3 FC10 FC3 FC12{ BC4 v16 v17 v18 FC13{ BC9}} FC14{ BC15{ BC16{ BC5 v20 v21 v22 FC17{ m FC18{ Fp Fi[2]}[16] Fi} FC17 FC7 FC7 FC7 FC7 FC7 FC19{ m FC20{ Fc[3] Fi} Fi[2]}} v23 FC21{ FC22{ m Fp Fc[3] Fi} FC22[3] FC22 FC23{ m FC22[4] Fi} FC22} Fp} v19} FC24{ BC14 v24} FC25{ BC24 v25} FC26{ BC15 v26} FC27{ BC28{ BC5 vd v28 v29 FC29{ m Fp}} v27 FC30{ BC9}} FC31{ BC9} FC31 FC31 FC31 FC32{ m Fp[3] Fi Fp Fi Fp[2] FC33{ m} FC33 Fi[10] Fp Fi:1 Fi:1 Fi:1 Fi:1 Fi:3 Fi:2 Fi:3 Fi:1 Fi:1} FC34{ m Fi} FC35{ m Fi[3]} FC35 Fi[8] FC36{ m Fi[2]} Fi[2]}
+
+
+void  S17824C1 ::mf17824c1(){}
+
+static void Test_S17824C1()
+{
+  {
+    init_simple_test("S17824C1");
+    static S17824C1 lv;
+    check2(sizeof(lv), ABISELECT(4096,2872), "sizeof(S17824C1)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S17824C1)");
+    check_field_offset(lv, s17824c1f0, 0, "S17824C1.s17824c1f0");
+    check_field_offset(lv, s17824c1f1, ABISELECT(8,4), "S17824C1.s17824c1f1");
+    check_field_offset(lv, s17824c1f2, ABISELECT(32,28), "S17824C1.s17824c1f2");
+    check_field_offset(lv, s17824c1f3, ABISELECT(40,32), "S17824C1.s17824c1f3");
+    check_field_offset(lv, s17824c1f4, ABISELECT(48,36), "S17824C1.s17824c1f4");
+    check_field_offset(lv, s17824c1f5, ABISELECT(112,72), "S17824C1.s17824c1f5");
+    check_field_offset(lv, s17824c1f6, ABISELECT(176,108), "S17824C1.s17824c1f6");
+    check_field_offset(lv, s17824c1f7, ABISELECT(240,144), "S17824C1.s17824c1f7");
+    check_field_offset(lv, s17824c1f8, ABISELECT(304,180), "S17824C1.s17824c1f8");
+    check_field_offset(lv, s17824c1f9, ABISELECT(368,216), "S17824C1.s17824c1f9");
+    check_field_offset(lv, s17824c1f10, ABISELECT(432,252), "S17824C1.s17824c1f10");
+    check_field_offset(lv, s17824c1f11, ABISELECT(496,288), "S17824C1.s17824c1f11");
+    check_field_offset(lv, s17824c1f12, ABISELECT(560,324), "S17824C1.s17824c1f12");
+    check_field_offset(lv, s17824c1f13, ABISELECT(1360,900), "S17824C1.s17824c1f13");
+    check_field_offset(lv, s17824c1f14, ABISELECT(2160,1476), "S17824C1.s17824c1f14");
+    check_field_offset(lv, s17824c1f15, ABISELECT(2960,2052), "S17824C1.s17824c1f15");
+    check_field_offset(lv, s17824c1f16, ABISELECT(3760,2628), "S17824C1.s17824c1f16");
+    check_field_offset(lv, s17824c1f17, ABISELECT(3824,2664), "S17824C1.s17824c1f17");
+    check_field_offset(lv, s17824c1f18, ABISELECT(3840,2676), "S17824C1.s17824c1f18");
+    check_field_offset(lv, s17824c1f19, ABISELECT(3856,2688), "S17824C1.s17824c1f19");
+    check_field_offset(lv, s17824c1f20, ABISELECT(3872,2700), "S17824C1.s17824c1f20");
+    check_field_offset(lv, s17824c1f21, ABISELECT(3888,2712), "S17824C1.s17824c1f21");
+    check_field_offset(lv, s17824c1f22, ABISELECT(4016,2796), "S17824C1.s17824c1f22");
+    check_field_offset(lv, s17824c1f23, ABISELECT(4020,2800), "S17824C1.s17824c1f23");
+    check_field_offset(lv, s17824c1f24, ABISELECT(4032,2812), "S17824C1.s17824c1f24");
+    check_field_offset(lv, s17824c1f25, ABISELECT(4044,2824), "S17824C1.s17824c1f25");
+    check_field_offset(lv, s17824c1f26, ABISELECT(4076,2856), "S17824C1.s17824c1f26");
+    check_field_offset(lv, s17824c1f27, ABISELECT(4084,2864), "S17824C1.s17824c1f27");
+  }
+}
+static Arrange_To_Call_Me vS17824C1(Test_S17824C1, "S17824C1", ABISELECT(4096,2872));
+
+#else // __cplusplus
+
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S10035C2  {
+  void *s10035c2f0;
+  ::S2261C30 s10035c2f1;
+  int s10035c2f2;
+  ::S6645C47 s10035c2f3;
+  unsigned int s10035c2f4:1;
+  unsigned int s10035c2f5:1;
+  unsigned int s10035c2f6:1;
+  unsigned int s10035c2f7:1;
+  unsigned int s10035c2f8:1;
+  unsigned int s10035c2f9:1;
+  unsigned int s10035c2f10:1;
+  int s10035c2f11:3;
+  int s10035c2f12:3;
+  ::S6645C42_nt s10035c2f13;
+  int s10035c2f14;
+  virtual  ~S10035C2(); // _ZN8S10035C2D1Ev
+  virtual void  v6(); // _ZN8S10035C22v6Ev
+  virtual void  v7(); // _ZN8S10035C22v7Ev
+  virtual void  v8(); // _ZN8S10035C22v8Ev
+  virtual void  v9(); // _ZN8S10035C22v9Ev
+  virtual void  v10(); // _ZN8S10035C23v10Ev
+  virtual void  v11(); // _ZN8S10035C23v11Ev
+  virtual void  v12(); // _ZN8S10035C23v12Ev
+  virtual void  v13(); // _ZN8S10035C23v13Ev
+  virtual void  v14(); // _ZN8S10035C23v14Ev
+  virtual void  v15(); // _ZN8S10035C23v15Ev
+  virtual void  v16(); // _ZN8S10035C23v16Ev
+  virtual void  v17(); // _ZN8S10035C23v17Ev
+  virtual void  v18(); // _ZN8S10035C23v18Ev
+  virtual void  v19(); // _ZN8S10035C23v19Ev
+  virtual void  v20(); // _ZN8S10035C23v20Ev
+  virtual void  v21(); // _ZN8S10035C23v21Ev
+  virtual void  v22(); // _ZN8S10035C23v22Ev
+  virtual void  v23(); // _ZN8S10035C23v23Ev
+  S10035C2(); // tgen
+};
+//SIG(-1 S10035C2) C1{ vd v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 v13 v14 v15 v16 v17 v18 Fp FC2{ m} Fi FC3{ BC4{ m Fp Fi[2]}} Fi:1 Fi:1 Fi:1 Fi:1 Fi:1 Fi:1 Fi:1 Fi:3 Fi:3 FC5{ BC4} Fi}
+
+
+ S10035C2 ::~S10035C2(){ note_dtor("S10035C2", this);}
+void  S10035C2 ::v6(){vfunc_called(this, "_ZN8S10035C22v6Ev");}
+void  S10035C2 ::v7(){vfunc_called(this, "_ZN8S10035C22v7Ev");}
+void  S10035C2 ::v8(){vfunc_called(this, "_ZN8S10035C22v8Ev");}
+void  S10035C2 ::v9(){vfunc_called(this, "_ZN8S10035C22v9Ev");}
+void  S10035C2 ::v10(){vfunc_called(this, "_ZN8S10035C23v10Ev");}
+void  S10035C2 ::v11(){vfunc_called(this, "_ZN8S10035C23v11Ev");}
+void  S10035C2 ::v12(){vfunc_called(this, "_ZN8S10035C23v12Ev");}
+void  S10035C2 ::v13(){vfunc_called(this, "_ZN8S10035C23v13Ev");}
+void  S10035C2 ::v14(){vfunc_called(this, "_ZN8S10035C23v14Ev");}
+void  S10035C2 ::v15(){vfunc_called(this, "_ZN8S10035C23v15Ev");}
+void  S10035C2 ::v16(){vfunc_called(this, "_ZN8S10035C23v16Ev");}
+void  S10035C2 ::v17(){vfunc_called(this, "_ZN8S10035C23v17Ev");}
+void  S10035C2 ::v18(){vfunc_called(this, "_ZN8S10035C23v18Ev");}
+void  S10035C2 ::v19(){vfunc_called(this, "_ZN8S10035C23v19Ev");}
+void  S10035C2 ::v20(){vfunc_called(this, "_ZN8S10035C23v20Ev");}
+void  S10035C2 ::v21(){vfunc_called(this, "_ZN8S10035C23v21Ev");}
+void  S10035C2 ::v22(){vfunc_called(this, "_ZN8S10035C23v22Ev");}
+void  S10035C2 ::v23(){vfunc_called(this, "_ZN8S10035C23v23Ev");}
+S10035C2 ::S10035C2(){ note_ctor("S10035C2", this);} // tgen
+
+static void Test_S10035C2()
+{
+  extern Class_Descriptor cd_S10035C2;
+  void *lvp;
+  {
+    ABISELECT(double,int) buf[ABISELECT(10,13)];
+    init_test(&cd_S10035C2, buf);
+    S10035C2 *dp, &lv = *(dp=new (buf) S10035C2());
+    lvp = (void*)&lv;
+    check2(sizeof(lv), ABISELECT(72,48), "sizeof(S10035C2)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S10035C2)");
+    check_field_offset(lv, s10035c2f0, ABISELECT(8,4), "S10035C2.s10035c2f0");
+    check_field_offset(lv, s10035c2f1, ABISELECT(16,8), "S10035C2.s10035c2f1");
+    check_field_offset(lv, s10035c2f2, ABISELECT(20,12), "S10035C2.s10035c2f2");
+    check_field_offset(lv, s10035c2f3, ABISELECT(24,16), "S10035C2.s10035c2f3");
+    set_bf_and_test(lv, s10035c2f4, ABISELECT(40,28), 0, 1, 1, "S10035C2");
+    set_bf_and_test(lv, s10035c2f5, ABISELECT(40,28), 1, 1, 1, "S10035C2");
+    set_bf_and_test(lv, s10035c2f6, ABISELECT(40,28), 2, 1, 1, "S10035C2");
+    set_bf_and_test(lv, s10035c2f7, ABISELECT(40,28), 3, 1, 1, "S10035C2");
+    set_bf_and_test(lv, s10035c2f8, ABISELECT(40,28), 4, 1, 1, "S10035C2");
+    set_bf_and_test(lv, s10035c2f9, ABISELECT(40,28), 5, 1, 1, "S10035C2");
+    set_bf_and_test(lv, s10035c2f10, ABISELECT(40,28), 6, 1, 1, "S10035C2");
+    set_bf_and_test(lv, s10035c2f11, ABISELECT(40,28), 7, 3, 1, "S10035C2");
+    set_bf_and_test(lv, s10035c2f11, ABISELECT(40,28), 7, 3, hide_sll(1LL<<2), "S10035C2");
+    set_bf_and_test(lv, s10035c2f12, ABISELECT(41,29), 2, 3, 1, "S10035C2");
+    set_bf_and_test(lv, s10035c2f12, ABISELECT(41,29), 2, 3, hide_sll(1LL<<2), "S10035C2");
+    check_field_offset(lv, s10035c2f13, ABISELECT(48,32), "S10035C2.s10035c2f13");
+    check_field_offset(lv, s10035c2f14, ABISELECT(64,44), "S10035C2.s10035c2f14");
+    test_class_info(&lv, &cd_S10035C2);
+    dp->~S10035C2();
+  }
+  Check_Ctor_Dtor_Calls(lvp);
+}
+static Arrange_To_Call_Me vS10035C2(Test_S10035C2, "S10035C2", ABISELECT(72,48));
+
+#else // __cplusplus
+
+extern void _ZN8S10035C2C1Ev();
+extern void _ZN8S10035C2D1Ev();
+Name_Map name_map_S10035C2[] = {
+  NSPAIR(_ZN8S10035C2C1Ev),
+  NSPAIR(_ZN8S10035C2D1Ev),
+  {0,0}
+};
+extern VTBL_ENTRY _ZTI8S10035C2[];
+extern void _ZN8S10035C2D1Ev();
+extern void _ZN8S10035C2D0Ev();
+extern void _ZN8S10035C22v6Ev();
+extern void _ZN8S10035C22v7Ev();
+extern void _ZN8S10035C22v8Ev();
+extern void _ZN8S10035C22v9Ev();
+extern void _ZN8S10035C23v10Ev();
+extern void _ZN8S10035C23v11Ev();
+extern void _ZN8S10035C23v12Ev();
+extern void _ZN8S10035C23v13Ev();
+extern void _ZN8S10035C23v14Ev();
+extern void _ZN8S10035C23v15Ev();
+extern void _ZN8S10035C23v16Ev();
+extern void _ZN8S10035C23v17Ev();
+extern void _ZN8S10035C23v18Ev();
+extern void _ZN8S10035C23v19Ev();
+extern void _ZN8S10035C23v20Ev();
+extern void _ZN8S10035C23v21Ev();
+extern void _ZN8S10035C23v22Ev();
+extern void _ZN8S10035C23v23Ev();
+static  VTBL_ENTRY vtc_S10035C2[] = {
+  0,
+  (VTBL_ENTRY)&(_ZTI8S10035C2[0]),
+  (VTBL_ENTRY)&_ZN8S10035C2D1Ev,
+  (VTBL_ENTRY)&_ZN8S10035C2D0Ev,
+  (VTBL_ENTRY)&_ZN8S10035C22v6Ev,
+  (VTBL_ENTRY)&_ZN8S10035C22v7Ev,
+  (VTBL_ENTRY)&_ZN8S10035C22v8Ev,
+  (VTBL_ENTRY)&_ZN8S10035C22v9Ev,
+  (VTBL_ENTRY)&_ZN8S10035C23v10Ev,
+  (VTBL_ENTRY)&_ZN8S10035C23v11Ev,
+  (VTBL_ENTRY)&_ZN8S10035C23v12Ev,
+  (VTBL_ENTRY)&_ZN8S10035C23v13Ev,
+  (VTBL_ENTRY)&_ZN8S10035C23v14Ev,
+  (VTBL_ENTRY)&_ZN8S10035C23v15Ev,
+  (VTBL_ENTRY)&_ZN8S10035C23v16Ev,
+  (VTBL_ENTRY)&_ZN8S10035C23v17Ev,
+  (VTBL_ENTRY)&_ZN8S10035C23v18Ev,
+  (VTBL_ENTRY)&_ZN8S10035C23v19Ev,
+  (VTBL_ENTRY)&_ZN8S10035C23v20Ev,
+  (VTBL_ENTRY)&_ZN8S10035C23v21Ev,
+  (VTBL_ENTRY)&_ZN8S10035C23v22Ev,
+  (VTBL_ENTRY)&_ZN8S10035C23v23Ev,
+};
+extern VTBL_ENTRY _ZTI8S10035C2[];
+extern  VTBL_ENTRY _ZTV8S10035C2[];
+Class_Descriptor cd_S10035C2 = {  "S10035C2", // class name
+  0,0,//no base classes
+  &(vtc_S10035C2[0]), // expected_vtbl_contents
+  0, //no vtt
+  ABISELECT(72,48), // object size
+  NSPAIRA(_ZTI8S10035C2),ABISELECT(16,8), //typeinfo_var
+  NSPAIRA(_ZTV8S10035C2),22, //virtual function table var
+  2, // offset into main vftv pointed to by object[0]
+  {0,0},0, // virtual table table var
+  0, // n_initialized_bases
+  0, // has_virtual_bases
+  1, // has_class_type_fields
+  0, // alt-thunk-names
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S10035C9  {
+  ::S6491C20_nt s10035c9f0;
+  unsigned int s10035c9f1:1;
+  virtual  ~S10035C9(); // _ZN8S10035C9D1Ev
+  virtual void  v26(); // _ZN8S10035C93v26Ev
+  virtual void  v27(); // _ZN8S10035C93v27Ev
+  virtual void  v28(); // _ZN8S10035C93v28Ev
+  virtual void  v29(); // _ZN8S10035C93v29Ev
+  virtual void  v30(); // _ZN8S10035C93v30Ev
+  virtual void  v31(); // _ZN8S10035C93v31Ev
+  virtual void  v32(); // _ZN8S10035C93v32Ev
+  S10035C9(); // tgen
+};
+//SIG(-1 S10035C9) C1{ vd v1 v2 v3 v4 v5 v6 v7 FC2{ m Fp[3]} Fi:1}
+
+
+ S10035C9 ::~S10035C9(){ note_dtor("S10035C9", this);}
+void  S10035C9 ::v26(){vfunc_called(this, "_ZN8S10035C93v26Ev");}
+void  S10035C9 ::v27(){vfunc_called(this, "_ZN8S10035C93v27Ev");}
+void  S10035C9 ::v28(){vfunc_called(this, "_ZN8S10035C93v28Ev");}
+void  S10035C9 ::v29(){vfunc_called(this, "_ZN8S10035C93v29Ev");}
+void  S10035C9 ::v30(){vfunc_called(this, "_ZN8S10035C93v30Ev");}
+void  S10035C9 ::v31(){vfunc_called(this, "_ZN8S10035C93v31Ev");}
+void  S10035C9 ::v32(){vfunc_called(this, "_ZN8S10035C93v32Ev");}
+S10035C9 ::S10035C9(){ note_ctor("S10035C9", this);} // tgen
+
+static void Test_S10035C9()
+{
+  extern Class_Descriptor cd_S10035C9;
+  void *lvp;
+  {
+    ABISELECT(double,int) buf[6];
+    init_test(&cd_S10035C9, buf);
+    S10035C9 *dp, &lv = *(dp=new (buf) S10035C9());
+    lvp = (void*)&lv;
+    check2(sizeof(lv), ABISELECT(40,20), "sizeof(S10035C9)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S10035C9)");
+    check_field_offset(lv, s10035c9f0, ABISELECT(8,4), "S10035C9.s10035c9f0");
+    set_bf_and_test(lv, s10035c9f1, ABISELECT(32,16), 0, 1, 1, "S10035C9");
+    test_class_info(&lv, &cd_S10035C9);
+    dp->~S10035C9();
+  }
+  Check_Ctor_Dtor_Calls(lvp);
+}
+static Arrange_To_Call_Me vS10035C9(Test_S10035C9, "S10035C9", ABISELECT(40,20));
+
+#else // __cplusplus
+
+extern void _ZN8S10035C9C1Ev();
+extern void _ZN8S10035C9D1Ev();
+Name_Map name_map_S10035C9[] = {
+  NSPAIR(_ZN8S10035C9C1Ev),
+  NSPAIR(_ZN8S10035C9D1Ev),
+  {0,0}
+};
+extern VTBL_ENTRY _ZTI8S10035C9[];
+extern void _ZN8S10035C9D1Ev();
+extern void _ZN8S10035C9D0Ev();
+extern void _ZN8S10035C93v26Ev();
+extern void _ZN8S10035C93v27Ev();
+extern void _ZN8S10035C93v28Ev();
+extern void _ZN8S10035C93v29Ev();
+extern void _ZN8S10035C93v30Ev();
+extern void _ZN8S10035C93v31Ev();
+extern void _ZN8S10035C93v32Ev();
+static  VTBL_ENTRY vtc_S10035C9[] = {
+  0,
+  (VTBL_ENTRY)&(_ZTI8S10035C9[0]),
+  (VTBL_ENTRY)&_ZN8S10035C9D1Ev,
+  (VTBL_ENTRY)&_ZN8S10035C9D0Ev,
+  (VTBL_ENTRY)&_ZN8S10035C93v26Ev,
+  (VTBL_ENTRY)&_ZN8S10035C93v27Ev,
+  (VTBL_ENTRY)&_ZN8S10035C93v28Ev,
+  (VTBL_ENTRY)&_ZN8S10035C93v29Ev,
+  (VTBL_ENTRY)&_ZN8S10035C93v30Ev,
+  (VTBL_ENTRY)&_ZN8S10035C93v31Ev,
+  (VTBL_ENTRY)&_ZN8S10035C93v32Ev,
+};
+extern VTBL_ENTRY _ZTI8S10035C9[];
+extern  VTBL_ENTRY _ZTV8S10035C9[];
+Class_Descriptor cd_S10035C9 = {  "S10035C9", // class name
+  0,0,//no base classes
+  &(vtc_S10035C9[0]), // expected_vtbl_contents
+  0, //no vtt
+  ABISELECT(40,20), // object size
+  NSPAIRA(_ZTI8S10035C9),ABISELECT(16,8), //typeinfo_var
+  NSPAIRA(_ZTV8S10035C9),11, //virtual function table var
+  2, // offset into main vftv pointed to by object[0]
+  {0,0},0, // virtual table table var
+  0, // n_initialized_bases
+  0, // has_virtual_bases
+  1, // has_class_type_fields
+  0, // alt-thunk-names
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S10035C8  : S10035C9 {
+  ::S6491C27 s10035c8f0;
+  ::S6491C27 s10035c8f1;
+  ::S17824C34 s10035c8f2;
+  ::S17824C34 s10035c8f3;
+  ::S17824C34 s10035c8f4;
+  ::S17824C34 s10035c8f5;
+  ::S17824C34 s10035c8f6;
+  ::S6491C30 s10035c8f7;
+  virtual void  v33(); // _ZN8S10035C83v33Ev
+  virtual void  v34(); // _ZN8S10035C83v34Ev
+  virtual void  v35(); // _ZN8S10035C83v35Ev
+  ~S10035C8(); // tgen
+  S10035C8(); // tgen
+};
+//SIG(-1 S10035C8) C1{ BC2{ vd v4 v5 v6 v7 v8 v9 v10 FC3{ m Fp[3]} Fi:1} v1 v2 v3 FC4{ m FC5{ Fp Fi[2]}[16] Fi} FC4 FC6{ m Fp} FC6 FC6 FC6 FC6 FC7{ m FC8{ Fc[3] Fi} Fi[2]}}
+
+
+void  S10035C8 ::v33(){vfunc_called(this, "_ZN8S10035C83v33Ev");}
+void  S10035C8 ::v34(){vfunc_called(this, "_ZN8S10035C83v34Ev");}
+void  S10035C8 ::v35(){vfunc_called(this, "_ZN8S10035C83v35Ev");}
+S10035C8 ::~S10035C8(){ note_dtor("S10035C8", this);} // tgen
+S10035C8 ::S10035C8(){ note_ctor("S10035C8", this);} // tgen
+
+static void Test_S10035C8()
+{
+  extern Class_Descriptor cd_S10035C8;
+  void *lvp;
+  {
+    ABISELECT(double,int) buf[ABISELECT(79,113)];
+    init_test(&cd_S10035C8, buf);
+    S10035C8 *dp, &lv = *(dp=new (buf) S10035C8());
+    lvp = (void*)&lv;
+    check2(sizeof(lv), ABISELECT(624,448), "sizeof(S10035C8)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S10035C8)");
+    check_base_class_offset(lv, (S10035C9*), 0, "S10035C8");
+    check_field_offset(lv, s10035c8f0, ABISELECT(40,20), "S10035C8.s10035c8f0");
+    check_field_offset(lv, s10035c8f1, ABISELECT(304,216), "S10035C8.s10035c8f1");
+    check_field_offset(lv, s10035c8f2, ABISELECT(568,412), "S10035C8.s10035c8f2");
+    check_field_offset(lv, s10035c8f3, ABISELECT(576,416), "S10035C8.s10035c8f3");
+    check_field_offset(lv, s10035c8f4, ABISELECT(584,420), "S10035C8.s10035c8f4");
+    check_field_offset(lv, s10035c8f5, ABISELECT(592,424), "S10035C8.s10035c8f5");
+    check_field_offset(lv, s10035c8f6, ABISELECT(600,428), "S10035C8.s10035c8f6");
+    check_field_offset(lv, s10035c8f7, ABISELECT(608,432), "S10035C8.s10035c8f7");
+    test_class_info(&lv, &cd_S10035C8);
+    dp->~S10035C8();
+  }
+  Check_Ctor_Dtor_Calls(lvp);
+}
+static Arrange_To_Call_Me vS10035C8(Test_S10035C8, "S10035C8", ABISELECT(624,448));
+
+#else // __cplusplus
+
+extern void _ZN8S10035C8C1Ev();
+extern void _ZN8S10035C8D1Ev();
+Name_Map name_map_S10035C8[] = {
+  NSPAIR(_ZN8S10035C8C1Ev),
+  NSPAIR(_ZN8S10035C8D1Ev),
+  {0,0}
+};
+extern Class_Descriptor cd_S10035C9;
+extern VTBL_ENTRY _ZTI8S10035C9[];
+extern  VTBL_ENTRY _ZTV8S10035C9[];
+static Base_Class bases_S10035C8[] = {
+  // ofst, vfto, nneg, vtt_idx, base_vtt_idx, init_seq, direct, virtual
+  {&cd_S10035C9,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    1, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {0}};
+extern VTBL_ENTRY _ZTI8S10035C8[];
+extern void _ZN8S10035C8D1Ev();
+extern void _ZN8S10035C8D0Ev();
+extern void _ZN8S10035C93v26Ev();
+extern void _ZN8S10035C93v27Ev();
+extern void _ZN8S10035C93v28Ev();
+extern void _ZN8S10035C93v29Ev();
+extern void _ZN8S10035C93v30Ev();
+extern void _ZN8S10035C93v31Ev();
+extern void _ZN8S10035C93v32Ev();
+extern void _ZN8S10035C83v33Ev();
+extern void _ZN8S10035C83v34Ev();
+extern void _ZN8S10035C83v35Ev();
+static  VTBL_ENTRY vtc_S10035C8[] = {
+  0,
+  (VTBL_ENTRY)&(_ZTI8S10035C8[0]),
+  (VTBL_ENTRY)&_ZN8S10035C8D1Ev,
+  (VTBL_ENTRY)&_ZN8S10035C8D0Ev,
+  (VTBL_ENTRY)&_ZN8S10035C93v26Ev,
+  (VTBL_ENTRY)&_ZN8S10035C93v27Ev,
+  (VTBL_ENTRY)&_ZN8S10035C93v28Ev,
+  (VTBL_ENTRY)&_ZN8S10035C93v29Ev,
+  (VTBL_ENTRY)&_ZN8S10035C93v30Ev,
+  (VTBL_ENTRY)&_ZN8S10035C93v31Ev,
+  (VTBL_ENTRY)&_ZN8S10035C93v32Ev,
+  (VTBL_ENTRY)&_ZN8S10035C83v33Ev,
+  (VTBL_ENTRY)&_ZN8S10035C83v34Ev,
+  (VTBL_ENTRY)&_ZN8S10035C83v35Ev,
+};
+extern VTBL_ENTRY _ZTI8S10035C8[];
+extern  VTBL_ENTRY _ZTV8S10035C8[];
+Class_Descriptor cd_S10035C8 = {  "S10035C8", // class name
+  bases_S10035C8, 1,
+  &(vtc_S10035C8[0]), // expected_vtbl_contents
+  0, //no vtt
+  ABISELECT(624,448), // object size
+  NSPAIRA(_ZTI8S10035C8),ABISELECT(24,12), //typeinfo_var
+  NSPAIRA(_ZTV8S10035C8),14, //virtual function table var
+  2, // offset into main vftv pointed to by object[0]
+  {0,0},0, // virtual table table var
+  1, // n_initialized_bases
+  0, // has_virtual_bases
+  1, // has_class_type_fields
+  0, // alt-thunk-names
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S10035C7  : S10035C8 {
+  ::S6491C32 s10035c7f0;
+  virtual void  v24(); // _ZN8S10035C73v24Ev
+  virtual void  v25(); // _ZN8S10035C73v25Ev
+  ~S10035C7(); // tgen
+  S10035C7(); // tgen
+};
+//SIG(-1 S10035C7) C1{ BC2{ BC3{ vd v3 v4 v5 v6 v7 v8 v9 FC4{ m Fp[3]} Fi:1} v10 v11 v12 FC5{ m FC6{ Fp Fi[2]}[16] Fi} FC5 FC7{ m Fp} FC7 FC7 FC7 FC7 FC8{ m FC9{ Fc[3] Fi} Fi[2]}} v1 v2 FC10{ BC8 FC11{ m Fp Fc[3] Fi} FC11[2] FC12{ m FC11[4] Fi} FC11 FC11}}
+
+
+void  S10035C7 ::v24(){vfunc_called(this, "_ZN8S10035C73v24Ev");}
+void  S10035C7 ::v25(){vfunc_called(this, "_ZN8S10035C73v25Ev");}
+S10035C7 ::~S10035C7(){ note_dtor("S10035C7", this);} // tgen
+S10035C7 ::S10035C7(){ note_ctor("S10035C7", this);} // tgen
+
+static void Test_S10035C7()
+{
+  extern Class_Descriptor cd_S10035C7;
+  void *lvp;
+  {
+    ABISELECT(double,int) buf[ABISELECT(100,145)];
+    init_test(&cd_S10035C7, buf);
+    S10035C7 *dp, &lv = *(dp=new (buf) S10035C7());
+    lvp = (void*)&lv;
+    check2(sizeof(lv), ABISELECT(792,576), "sizeof(S10035C7)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S10035C7)");
+    check_base_class_offset(lv, (S10035C9*)(S10035C8*), 0, "S10035C7");
+    check_base_class_offset(lv, (S10035C8*), 0, "S10035C7");
+    check_field_offset(lv, s10035c7f0, ABISELECT(624,448), "S10035C7.s10035c7f0");
+    test_class_info(&lv, &cd_S10035C7);
+    dp->~S10035C7();
+  }
+  Check_Ctor_Dtor_Calls(lvp);
+}
+static Arrange_To_Call_Me vS10035C7(Test_S10035C7, "S10035C7", ABISELECT(792,576));
+
+#else // __cplusplus
+
+extern void _ZN8S10035C7C1Ev();
+extern void _ZN8S10035C7D1Ev();
+Name_Map name_map_S10035C7[] = {
+  NSPAIR(_ZN8S10035C7C1Ev),
+  NSPAIR(_ZN8S10035C7D1Ev),
+  {0,0}
+};
+extern Class_Descriptor cd_S10035C9;
+extern VTBL_ENTRY _ZTI8S10035C9[];
+extern  VTBL_ENTRY _ZTV8S10035C9[];
+extern Class_Descriptor cd_S10035C8;
+extern VTBL_ENTRY _ZTI8S10035C8[];
+extern  VTBL_ENTRY _ZTV8S10035C8[];
+static Base_Class bases_S10035C7[] = {
+  // ofst, vfto, nneg, vtt_idx, base_vtt_idx, init_seq, direct, virtual
+  {&cd_S10035C9,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    1, //init_seq
+    1, //immediately_derived
+  0, 0},
+  {&cd_S10035C8,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    2, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {0}};
+extern VTBL_ENTRY _ZTI8S10035C7[];
+extern void _ZN8S10035C7D1Ev();
+extern void _ZN8S10035C7D0Ev();
+extern void _ZN8S10035C93v26Ev();
+extern void _ZN8S10035C93v27Ev();
+extern void _ZN8S10035C93v28Ev();
+extern void _ZN8S10035C93v29Ev();
+extern void _ZN8S10035C93v30Ev();
+extern void _ZN8S10035C93v31Ev();
+extern void _ZN8S10035C93v32Ev();
+extern void _ZN8S10035C83v33Ev();
+extern void _ZN8S10035C83v34Ev();
+extern void _ZN8S10035C83v35Ev();
+extern void _ZN8S10035C73v24Ev();
+extern void _ZN8S10035C73v25Ev();
+static  VTBL_ENTRY vtc_S10035C7[] = {
+  0,
+  (VTBL_ENTRY)&(_ZTI8S10035C7[0]),
+  (VTBL_ENTRY)&_ZN8S10035C7D1Ev,
+  (VTBL_ENTRY)&_ZN8S10035C7D0Ev,
+  (VTBL_ENTRY)&_ZN8S10035C93v26Ev,
+  (VTBL_ENTRY)&_ZN8S10035C93v27Ev,
+  (VTBL_ENTRY)&_ZN8S10035C93v28Ev,
+  (VTBL_ENTRY)&_ZN8S10035C93v29Ev,
+  (VTBL_ENTRY)&_ZN8S10035C93v30Ev,
+  (VTBL_ENTRY)&_ZN8S10035C93v31Ev,
+  (VTBL_ENTRY)&_ZN8S10035C93v32Ev,
+  (VTBL_ENTRY)&_ZN8S10035C83v33Ev,
+  (VTBL_ENTRY)&_ZN8S10035C83v34Ev,
+  (VTBL_ENTRY)&_ZN8S10035C83v35Ev,
+  (VTBL_ENTRY)&_ZN8S10035C73v24Ev,
+  (VTBL_ENTRY)&_ZN8S10035C73v25Ev,
+};
+extern VTBL_ENTRY _ZTI8S10035C7[];
+extern  VTBL_ENTRY _ZTV8S10035C7[];
+Class_Descriptor cd_S10035C7 = {  "S10035C7", // class name
+  bases_S10035C7, 2,
+  &(vtc_S10035C7[0]), // expected_vtbl_contents
+  0, //no vtt
+  ABISELECT(792,576), // object size
+  NSPAIRA(_ZTI8S10035C7),ABISELECT(24,12), //typeinfo_var
+  NSPAIRA(_ZTV8S10035C7),16, //virtual function table var
+  2, // offset into main vftv pointed to by object[0]
+  {0,0},0, // virtual table table var
+  2, // n_initialized_bases
+  0, // has_virtual_bases
+  1, // has_class_type_fields
+  0, // alt-thunk-names
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S10035C20  : S10035C9 {
+  ::S17824C7_nt s10035c20f0;
+  virtual  ~S10035C20(); // _ZN9S10035C20D1Ev
+  virtual void  v37(); // _ZN9S10035C203v37Ev
+  virtual void  v38(); // _ZN9S10035C203v38Ev
+  S10035C20(); // tgen
+};
+//SIG(-1 S10035C20) C1{ BC2{ vd v3 v4 v5 v6 v7 v8 v9 FC3{ m Fp[3]} Fi:1} vd v1 v2 FC4{ m Fp}}
+
+
+ S10035C20 ::~S10035C20(){ note_dtor("S10035C20", this);}
+void  S10035C20 ::v37(){vfunc_called(this, "_ZN9S10035C203v37Ev");}
+void  S10035C20 ::v38(){vfunc_called(this, "_ZN9S10035C203v38Ev");}
+S10035C20 ::S10035C20(){ note_ctor("S10035C20", this);} // tgen
+
+static void Test_S10035C20()
+{
+  extern Class_Descriptor cd_S10035C20;
+  void *lvp;
+  {
+    ABISELECT(double,int) buf[7];
+    init_test(&cd_S10035C20, buf);
+    S10035C20 *dp, &lv = *(dp=new (buf) S10035C20());
+    lvp = (void*)&lv;
+    check2(sizeof(lv), ABISELECT(48,24), "sizeof(S10035C20)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S10035C20)");
+    check_base_class_offset(lv, (S10035C9*), 0, "S10035C20");
+    check_field_offset(lv, s10035c20f0, ABISELECT(40,20), "S10035C20.s10035c20f0");
+    test_class_info(&lv, &cd_S10035C20);
+    dp->~S10035C20();
+  }
+  Check_Ctor_Dtor_Calls(lvp);
+}
+static Arrange_To_Call_Me vS10035C20(Test_S10035C20, "S10035C20", ABISELECT(48,24));
+
+#else // __cplusplus
+
+extern void _ZN9S10035C20C1Ev();
+extern void _ZN9S10035C20D1Ev();
+Name_Map name_map_S10035C20[] = {
+  NSPAIR(_ZN9S10035C20C1Ev),
+  NSPAIR(_ZN9S10035C20D1Ev),
+  {0,0}
+};
+extern Class_Descriptor cd_S10035C9;
+extern VTBL_ENTRY _ZTI8S10035C9[];
+extern  VTBL_ENTRY _ZTV8S10035C9[];
+static Base_Class bases_S10035C20[] = {
+  // ofst, vfto, nneg, vtt_idx, base_vtt_idx, init_seq, direct, virtual
+  {&cd_S10035C9,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    1, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {0}};
+extern VTBL_ENTRY _ZTI9S10035C20[];
+extern void _ZN9S10035C20D1Ev();
+extern void _ZN9S10035C20D0Ev();
+extern void _ZN8S10035C93v26Ev();
+extern void _ZN8S10035C93v27Ev();
+extern void _ZN8S10035C93v28Ev();
+extern void _ZN8S10035C93v29Ev();
+extern void _ZN8S10035C93v30Ev();
+extern void _ZN8S10035C93v31Ev();
+extern void _ZN8S10035C93v32Ev();
+extern void _ZN9S10035C203v37Ev();
+extern void _ZN9S10035C203v38Ev();
+static  VTBL_ENTRY vtc_S10035C20[] = {
+  0,
+  (VTBL_ENTRY)&(_ZTI9S10035C20[0]),
+  (VTBL_ENTRY)&_ZN9S10035C20D1Ev,
+  (VTBL_ENTRY)&_ZN9S10035C20D0Ev,
+  (VTBL_ENTRY)&_ZN8S10035C93v26Ev,
+  (VTBL_ENTRY)&_ZN8S10035C93v27Ev,
+  (VTBL_ENTRY)&_ZN8S10035C93v28Ev,
+  (VTBL_ENTRY)&_ZN8S10035C93v29Ev,
+  (VTBL_ENTRY)&_ZN8S10035C93v30Ev,
+  (VTBL_ENTRY)&_ZN8S10035C93v31Ev,
+  (VTBL_ENTRY)&_ZN8S10035C93v32Ev,
+  (VTBL_ENTRY)&_ZN9S10035C203v37Ev,
+  (VTBL_ENTRY)&_ZN9S10035C203v38Ev,
+};
+extern VTBL_ENTRY _ZTI9S10035C20[];
+extern  VTBL_ENTRY _ZTV9S10035C20[];
+Class_Descriptor cd_S10035C20 = {  "S10035C20", // class name
+  bases_S10035C20, 1,
+  &(vtc_S10035C20[0]), // expected_vtbl_contents
+  0, //no vtt
+  ABISELECT(48,24), // object size
+  NSPAIRA(_ZTI9S10035C20),ABISELECT(24,12), //typeinfo_var
+  NSPAIRA(_ZTV9S10035C20),13, //virtual function table var
+  2, // offset into main vftv pointed to by object[0]
+  {0,0},0, // virtual table table var
+  1, // n_initialized_bases
+  0, // has_virtual_bases
+  1, // has_class_type_fields
+  0, // alt-thunk-names
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S10035C19  : S10035C20 {
+  void *s10035c19f0;
+  int s10035c19f1;
+  virtual void  v36(); // _ZN9S10035C193v36Ev
+  ~S10035C19(); // tgen
+  S10035C19(); // tgen
+};
+//SIG(-1 S10035C19) C1{ BC2{ BC3{ vd v2 v3 v4 v5 v6 v7 v8 FC4{ m Fp[3]} Fi:1} vd v9 v10 FC5{ m Fp}} v1 Fp Fi}
+
+
+void  S10035C19 ::v36(){vfunc_called(this, "_ZN9S10035C193v36Ev");}
+S10035C19 ::~S10035C19(){ note_dtor("S10035C19", this);} // tgen
+S10035C19 ::S10035C19(){ note_ctor("S10035C19", this);} // tgen
+
+static void Test_S10035C19()
+{
+  extern Class_Descriptor cd_S10035C19;
+  void *lvp;
+  {
+    ABISELECT(double,int) buf[9];
+    init_test(&cd_S10035C19, buf);
+    S10035C19 *dp, &lv = *(dp=new (buf) S10035C19());
+    lvp = (void*)&lv;
+    check2(sizeof(lv), ABISELECT(64,32), "sizeof(S10035C19)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S10035C19)");
+    check_base_class_offset(lv, (S10035C9*)(S10035C20*), 0, "S10035C19");
+    check_base_class_offset(lv, (S10035C20*), 0, "S10035C19");
+    check_field_offset(lv, s10035c19f0, ABISELECT(48,24), "S10035C19.s10035c19f0");
+    check_field_offset(lv, s10035c19f1, ABISELECT(56,28), "S10035C19.s10035c19f1");
+    test_class_info(&lv, &cd_S10035C19);
+    dp->~S10035C19();
+  }
+  Check_Ctor_Dtor_Calls(lvp);
+}
+static Arrange_To_Call_Me vS10035C19(Test_S10035C19, "S10035C19", ABISELECT(64,32));
+
+#else // __cplusplus
+
+extern void _ZN9S10035C19C1Ev();
+extern void _ZN9S10035C19D1Ev();
+Name_Map name_map_S10035C19[] = {
+  NSPAIR(_ZN9S10035C19C1Ev),
+  NSPAIR(_ZN9S10035C19D1Ev),
+  {0,0}
+};
+extern Class_Descriptor cd_S10035C9;
+extern VTBL_ENTRY _ZTI8S10035C9[];
+extern  VTBL_ENTRY _ZTV8S10035C9[];
+extern Class_Descriptor cd_S10035C20;
+extern VTBL_ENTRY _ZTI9S10035C20[];
+extern  VTBL_ENTRY _ZTV9S10035C20[];
+static Base_Class bases_S10035C19[] = {
+  // ofst, vfto, nneg, vtt_idx, base_vtt_idx, init_seq, direct, virtual
+  {&cd_S10035C9,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    1, //init_seq
+    1, //immediately_derived
+  0, 0},
+  {&cd_S10035C20,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    2, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {0}};
+extern VTBL_ENTRY _ZTI9S10035C19[];
+extern void _ZN9S10035C19D1Ev();
+extern void _ZN9S10035C19D0Ev();
+extern void _ZN8S10035C93v26Ev();
+extern void _ZN8S10035C93v27Ev();
+extern void _ZN8S10035C93v28Ev();
+extern void _ZN8S10035C93v29Ev();
+extern void _ZN8S10035C93v30Ev();
+extern void _ZN8S10035C93v31Ev();
+extern void _ZN8S10035C93v32Ev();
+extern void _ZN9S10035C203v37Ev();
+extern void _ZN9S10035C203v38Ev();
+extern void _ZN9S10035C193v36Ev();
+static  VTBL_ENTRY vtc_S10035C19[] = {
+  0,
+  (VTBL_ENTRY)&(_ZTI9S10035C19[0]),
+  (VTBL_ENTRY)&_ZN9S10035C19D1Ev,
+  (VTBL_ENTRY)&_ZN9S10035C19D0Ev,
+  (VTBL_ENTRY)&_ZN8S10035C93v26Ev,
+  (VTBL_ENTRY)&_ZN8S10035C93v27Ev,
+  (VTBL_ENTRY)&_ZN8S10035C93v28Ev,
+  (VTBL_ENTRY)&_ZN8S10035C93v29Ev,
+  (VTBL_ENTRY)&_ZN8S10035C93v30Ev,
+  (VTBL_ENTRY)&_ZN8S10035C93v31Ev,
+  (VTBL_ENTRY)&_ZN8S10035C93v32Ev,
+  (VTBL_ENTRY)&_ZN9S10035C203v37Ev,
+  (VTBL_ENTRY)&_ZN9S10035C203v38Ev,
+  (VTBL_ENTRY)&_ZN9S10035C193v36Ev,
+};
+extern VTBL_ENTRY _ZTI9S10035C19[];
+extern  VTBL_ENTRY _ZTV9S10035C19[];
+Class_Descriptor cd_S10035C19 = {  "S10035C19", // class name
+  bases_S10035C19, 2,
+  &(vtc_S10035C19[0]), // expected_vtbl_contents
+  0, //no vtt
+  ABISELECT(64,32), // object size
+  NSPAIRA(_ZTI9S10035C19),ABISELECT(24,12), //typeinfo_var
+  NSPAIRA(_ZTV9S10035C19),14, //virtual function table var
+  2, // offset into main vftv pointed to by object[0]
+  {0,0},0, // virtual table table var
+  2, // n_initialized_bases
+  0, // has_virtual_bases
+  1, // has_class_type_fields
+  0, // alt-thunk-names
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S10035C27  : S10035C20 {
+  ::S6491C23 s10035c27f0;
+  virtual void  v43(); // _ZN9S10035C273v43Ev
+  ~S10035C27(); // tgen
+  S10035C27(); // tgen
+};
+//SIG(-1 S10035C27) C1{ BC2{ BC3{ vd v2 v3 v4 v5 v6 v7 v8 FC4{ m Fp[3]} Fi:1} vd v9 v10 FC5{ m Fp}} v1 FC6{ BC7{ m Fp Fi[2]}}}
+
+
+void  S10035C27 ::v43(){vfunc_called(this, "_ZN9S10035C273v43Ev");}
+S10035C27 ::~S10035C27(){ note_dtor("S10035C27", this);} // tgen
+S10035C27 ::S10035C27(){ note_ctor("S10035C27", this);} // tgen
+
+static void Test_S10035C27()
+{
+  extern Class_Descriptor cd_S10035C27;
+  void *lvp;
+  {
+    ABISELECT(double,int) buf[ABISELECT(9,10)];
+    init_test(&cd_S10035C27, buf);
+    S10035C27 *dp, &lv = *(dp=new (buf) S10035C27());
+    lvp = (void*)&lv;
+    check2(sizeof(lv), ABISELECT(64,36), "sizeof(S10035C27)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S10035C27)");
+    check_base_class_offset(lv, (S10035C9*)(S10035C20*), 0, "S10035C27");
+    check_base_class_offset(lv, (S10035C20*), 0, "S10035C27");
+    check_field_offset(lv, s10035c27f0, ABISELECT(48,24), "S10035C27.s10035c27f0");
+    test_class_info(&lv, &cd_S10035C27);
+    dp->~S10035C27();
+  }
+  Check_Ctor_Dtor_Calls(lvp);
+}
+static Arrange_To_Call_Me vS10035C27(Test_S10035C27, "S10035C27", ABISELECT(64,36));
+
+#else // __cplusplus
+
+extern void _ZN9S10035C27C1Ev();
+extern void _ZN9S10035C27D1Ev();
+Name_Map name_map_S10035C27[] = {
+  NSPAIR(_ZN9S10035C27C1Ev),
+  NSPAIR(_ZN9S10035C27D1Ev),
+  {0,0}
+};
+extern Class_Descriptor cd_S10035C9;
+extern VTBL_ENTRY _ZTI8S10035C9[];
+extern  VTBL_ENTRY _ZTV8S10035C9[];
+extern Class_Descriptor cd_S10035C20;
+extern VTBL_ENTRY _ZTI9S10035C20[];
+extern  VTBL_ENTRY _ZTV9S10035C20[];
+static Base_Class bases_S10035C27[] = {
+  // ofst, vfto, nneg, vtt_idx, base_vtt_idx, init_seq, direct, virtual
+  {&cd_S10035C9,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    1, //init_seq
+    1, //immediately_derived
+  0, 0},
+  {&cd_S10035C20,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    2, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {0}};
+extern VTBL_ENTRY _ZTI9S10035C27[];
+extern void _ZN9S10035C27D1Ev();
+extern void _ZN9S10035C27D0Ev();
+extern void _ZN8S10035C93v26Ev();
+extern void _ZN8S10035C93v27Ev();
+extern void _ZN8S10035C93v28Ev();
+extern void _ZN8S10035C93v29Ev();
+extern void _ZN8S10035C93v30Ev();
+extern void _ZN8S10035C93v31Ev();
+extern void _ZN8S10035C93v32Ev();
+extern void _ZN9S10035C203v37Ev();
+extern void _ZN9S10035C203v38Ev();
+extern void _ZN9S10035C273v43Ev();
+static  VTBL_ENTRY vtc_S10035C27[] = {
+  0,
+  (VTBL_ENTRY)&(_ZTI9S10035C27[0]),
+  (VTBL_ENTRY)&_ZN9S10035C27D1Ev,
+  (VTBL_ENTRY)&_ZN9S10035C27D0Ev,
+  (VTBL_ENTRY)&_ZN8S10035C93v26Ev,
+  (VTBL_ENTRY)&_ZN8S10035C93v27Ev,
+  (VTBL_ENTRY)&_ZN8S10035C93v28Ev,
+  (VTBL_ENTRY)&_ZN8S10035C93v29Ev,
+  (VTBL_ENTRY)&_ZN8S10035C93v30Ev,
+  (VTBL_ENTRY)&_ZN8S10035C93v31Ev,
+  (VTBL_ENTRY)&_ZN8S10035C93v32Ev,
+  (VTBL_ENTRY)&_ZN9S10035C203v37Ev,
+  (VTBL_ENTRY)&_ZN9S10035C203v38Ev,
+  (VTBL_ENTRY)&_ZN9S10035C273v43Ev,
+};
+extern VTBL_ENTRY _ZTI9S10035C27[];
+extern  VTBL_ENTRY _ZTV9S10035C27[];
+Class_Descriptor cd_S10035C27 = {  "S10035C27", // class name
+  bases_S10035C27, 2,
+  &(vtc_S10035C27[0]), // expected_vtbl_contents
+  0, //no vtt
+  ABISELECT(64,36), // object size
+  NSPAIRA(_ZTI9S10035C27),ABISELECT(24,12), //typeinfo_var
+  NSPAIRA(_ZTV9S10035C27),14, //virtual function table var
+  2, // offset into main vftv pointed to by object[0]
+  {0,0},0, // virtual table table var
+  2, // n_initialized_bases
+  0, // has_virtual_bases
+  1, // has_class_type_fields
+  0, // alt-thunk-names
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S10035C29  : S10035C7 {
+  ~S10035C29(); // tgen
+  S10035C29(); // tgen
+};
+//SIG(-1 S10035C29) C1{ BC2{ BC3{ BC4{ vd v1 v2 v3 v4 v5 v6 v7 FC5{ m Fp[3]} Fi:1} v8 v9 v10 FC6{ m FC7{ Fp Fi[2]}[16] Fi} FC6 FC8{ m Fp} FC8 FC8 FC8 FC8 FC9{ m FC10{ Fc[3] Fi} Fi[2]}} v11 v12 FC11{ BC9 FC12{ m Fp Fc[3] Fi} FC12[2] FC13{ m FC12[4] Fi} FC12 FC12}}}
+
+
+S10035C29 ::~S10035C29(){ note_dtor("S10035C29", this);} // tgen
+S10035C29 ::S10035C29(){ note_ctor("S10035C29", this);} // tgen
+
+static void Test_S10035C29()
+{
+  extern Class_Descriptor cd_S10035C29;
+  void *lvp;
+  {
+    ABISELECT(double,int) buf[ABISELECT(100,145)];
+    init_test(&cd_S10035C29, buf);
+    S10035C29 *dp, &lv = *(dp=new (buf) S10035C29());
+    lvp = (void*)&lv;
+    check2(sizeof(lv), ABISELECT(792,576), "sizeof(S10035C29)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S10035C29)");
+    check_base_class_offset(lv, (S10035C9*)(S10035C8*)(S10035C7*), 0, "S10035C29");
+    check_base_class_offset(lv, (S10035C8*)(S10035C7*), 0, "S10035C29");
+    check_base_class_offset(lv, (S10035C7*), 0, "S10035C29");
+    test_class_info(&lv, &cd_S10035C29);
+    dp->~S10035C29();
+  }
+  Check_Ctor_Dtor_Calls(lvp);
+}
+static Arrange_To_Call_Me vS10035C29(Test_S10035C29, "S10035C29", ABISELECT(792,576));
+
+#else // __cplusplus
+
+extern void _ZN9S10035C29C1Ev();
+extern void _ZN9S10035C29D1Ev();
+Name_Map name_map_S10035C29[] = {
+  NSPAIR(_ZN9S10035C29C1Ev),
+  NSPAIR(_ZN9S10035C29D1Ev),
+  {0,0}
+};
+extern Class_Descriptor cd_S10035C9;
+extern VTBL_ENTRY _ZTI8S10035C9[];
+extern  VTBL_ENTRY _ZTV8S10035C9[];
+extern Class_Descriptor cd_S10035C8;
+extern VTBL_ENTRY _ZTI8S10035C8[];
+extern  VTBL_ENTRY _ZTV8S10035C8[];
+extern Class_Descriptor cd_S10035C7;
+extern VTBL_ENTRY _ZTI8S10035C7[];
+extern  VTBL_ENTRY _ZTV8S10035C7[];
+static Base_Class bases_S10035C29[] = {
+  // ofst, vfto, nneg, vtt_idx, base_vtt_idx, init_seq, direct, virtual
+  {&cd_S10035C9,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    1, //init_seq
+    1, //immediately_derived
+  0, 0},
+  {&cd_S10035C8,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    2, //init_seq
+    2, //immediately_derived
+  0, 0},
+  {&cd_S10035C7,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    3, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {0}};
+extern VTBL_ENTRY _ZTI9S10035C29[];
+extern void _ZN9S10035C29D1Ev();
+extern void _ZN9S10035C29D0Ev();
+extern void _ZN8S10035C93v26Ev();
+extern void _ZN8S10035C93v27Ev();
+extern void _ZN8S10035C93v28Ev();
+extern void _ZN8S10035C93v29Ev();
+extern void _ZN8S10035C93v30Ev();
+extern void _ZN8S10035C93v31Ev();
+extern void _ZN8S10035C93v32Ev();
+extern void _ZN8S10035C83v33Ev();
+extern void _ZN8S10035C83v34Ev();
+extern void _ZN8S10035C83v35Ev();
+extern void _ZN8S10035C73v24Ev();
+extern void _ZN8S10035C73v25Ev();
+static  VTBL_ENTRY vtc_S10035C29[] = {
+  0,
+  (VTBL_ENTRY)&(_ZTI9S10035C29[0]),
+  (VTBL_ENTRY)&_ZN9S10035C29D1Ev,
+  (VTBL_ENTRY)&_ZN9S10035C29D0Ev,
+  (VTBL_ENTRY)&_ZN8S10035C93v26Ev,
+  (VTBL_ENTRY)&_ZN8S10035C93v27Ev,
+  (VTBL_ENTRY)&_ZN8S10035C93v28Ev,
+  (VTBL_ENTRY)&_ZN8S10035C93v29Ev,
+  (VTBL_ENTRY)&_ZN8S10035C93v30Ev,
+  (VTBL_ENTRY)&_ZN8S10035C93v31Ev,
+  (VTBL_ENTRY)&_ZN8S10035C93v32Ev,
+  (VTBL_ENTRY)&_ZN8S10035C83v33Ev,
+  (VTBL_ENTRY)&_ZN8S10035C83v34Ev,
+  (VTBL_ENTRY)&_ZN8S10035C83v35Ev,
+  (VTBL_ENTRY)&_ZN8S10035C73v24Ev,
+  (VTBL_ENTRY)&_ZN8S10035C73v25Ev,
+};
+extern VTBL_ENTRY _ZTI9S10035C29[];
+extern  VTBL_ENTRY _ZTV9S10035C29[];
+Class_Descriptor cd_S10035C29 = {  "S10035C29", // class name
+  bases_S10035C29, 3,
+  &(vtc_S10035C29[0]), // expected_vtbl_contents
+  0, //no vtt
+  ABISELECT(792,576), // object size
+  NSPAIRA(_ZTI9S10035C29),ABISELECT(24,12), //typeinfo_var
+  NSPAIRA(_ZTV9S10035C29),16, //virtual function table var
+  2, // offset into main vftv pointed to by object[0]
+  {0,0},0, // virtual table table var
+  3, // n_initialized_bases
+  0, // has_virtual_bases
+  1, // has_class_type_fields
+  0, // alt-thunk-names
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S10035C1  : S10035C2 {
+  ::S10035C7 s10035c1f0;
+  ::S10035C19 s10035c1f1;
+  ::S10035C19 s10035c1f2;
+  ::S17824C32 s10035c1f3;
+  ::S10035C27 s10035c1f4;
+  ::S10035C29 s10035c1f5;
+  char s10035c1f6;
+  unsigned int s10035c1f7:1;
+  unsigned int s10035c1f8:1;
+  unsigned int s10035c1f9:1;
+  unsigned int s10035c1f10:1;
+  unsigned int s10035c1f11:1;
+  unsigned int s10035c1f12:1;
+  unsigned int s10035c1f13:1;
+  unsigned int s10035c1f14:1;
+  unsigned int s10035c1f15:1;
+  unsigned int s10035c1f16:1;
+  ::S2261C27 s10035c1f17;
+  ::S2261C27 s10035c1f18;
+  ::S2261C27 s10035c1f19;
+  virtual  ~S10035C1(); // _ZN8S10035C1D1Ev
+  virtual void  v1(); // _ZN8S10035C12v1Ev
+  virtual void  v2(); // _ZN8S10035C12v2Ev
+  virtual void  v3(); // _ZN8S10035C12v3Ev
+  virtual void  v4(); // _ZN8S10035C12v4Ev
+  virtual void  v5(); // _ZN8S10035C12v5Ev
+  S10035C1(); // tgen
+};
+//SIG(1 S10035C1) C1{ BC2{ vd v6 v7 v8 v9 v10 v11 v12 v13 v14 v15 v16 v17 v18 v19 v20 v21 v22 v23 Fp FC3{ m} Fi FC4{ BC5{ m Fp Fi[2]}} Fi:1 Fi:1 Fi:1 Fi:1 Fi:1 Fi:1 Fi:1 Fi:3 Fi:3 FC6{ BC5} Fi} vd v1 v2 v3 v4 v5 FC7{ BC8{ BC9{ vd v26 v27 v28 v29 v30 v31 v32 FC10{ m Fp[3]} Fi:1} v33 v34 v35 FC11{ m FC12{ Fp Fi[2]}[16] Fi} FC11 FC13{ m Fp} FC13 FC13 FC13 FC13 FC14{ m FC15{ Fc[3] Fi} Fi[2]}} v24 v25 FC16{ BC14 FC17{ m Fp Fc[3] Fi} FC17[2] FC18{ m FC17[4] Fi} FC17 FC17}} FC19{ BC20{ BC9 vd v37 v38 FC21{ m Fp}} v36 Fp Fi} FC19 FC22{ BC23{ BC24{ vd v40 v41 v42 v43 v44 v45 v46 FC10 Fi:1} vd v47 v48 FC13} v39 FC25{ BC5}} FC26{ BC20 v49 FC27{ BC5}} FC28{ BC7} Fc Fi:1 Fi:1 Fi:1 Fi:1 Fi:1 Fi:1 Fi:1 Fi:1 Fi:1 Fi:1 FC29{ m} FC29 FC29}
+
+
+ S10035C1 ::~S10035C1(){ note_dtor("S10035C1", this);}
+void  S10035C1 ::v1(){vfunc_called(this, "_ZN8S10035C12v1Ev");}
+void  S10035C1 ::v2(){vfunc_called(this, "_ZN8S10035C12v2Ev");}
+void  S10035C1 ::v3(){vfunc_called(this, "_ZN8S10035C12v3Ev");}
+void  S10035C1 ::v4(){vfunc_called(this, "_ZN8S10035C12v4Ev");}
+void  S10035C1 ::v5(){vfunc_called(this, "_ZN8S10035C12v5Ev");}
+S10035C1 ::S10035C1(){ note_ctor("S10035C1", this);} // tgen
+
+static void Test_S10035C1()
+{
+  extern Class_Descriptor cd_S10035C1;
+  void *lvp;
+  {
+    ABISELECT(double,int) buf[ABISELECT(241,337)];
+    init_test(&cd_S10035C1, buf);
+    S10035C1 *dp, &lv = *(dp=new (buf) S10035C1());
+    lvp = (void*)&lv;
+    check2(sizeof(lv), ABISELECT(1920,1344), "sizeof(S10035C1)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S10035C1)");
+    check_base_class_offset(lv, (S10035C2*), 0, "S10035C1");
+    check_field_offset(lv, s10035c1f0, ABISELECT(72,48), "S10035C1.s10035c1f0");
+    check_field_offset(lv, s10035c1f1, ABISELECT(864,624), "S10035C1.s10035c1f1");
+    check_field_offset(lv, s10035c1f2, ABISELECT(928,656), "S10035C1.s10035c1f2");
+    check_field_offset(lv, s10035c1f3, ABISELECT(992,688), "S10035C1.s10035c1f3");
+    check_field_offset(lv, s10035c1f4, ABISELECT(1056,724), "S10035C1.s10035c1f4");
+    check_field_offset(lv, s10035c1f5, ABISELECT(1120,760), "S10035C1.s10035c1f5");
+    check_field_offset(lv, s10035c1f6, ABISELECT(1912,1336), "S10035C1.s10035c1f6");
+    set_bf_and_test(lv, s10035c1f7, ABISELECT(1913,1337), 0, 1, 1, "S10035C1");
+    set_bf_and_test(lv, s10035c1f8, ABISELECT(1913,1337), 1, 1, 1, "S10035C1");
+    set_bf_and_test(lv, s10035c1f9, ABISELECT(1913,1337), 2, 1, 1, "S10035C1");
+    set_bf_and_test(lv, s10035c1f10, ABISELECT(1913,1337), 3, 1, 1, "S10035C1");
+    set_bf_and_test(lv, s10035c1f11, ABISELECT(1913,1337), 4, 1, 1, "S10035C1");
+    set_bf_and_test(lv, s10035c1f12, ABISELECT(1913,1337), 5, 1, 1, "S10035C1");
+    set_bf_and_test(lv, s10035c1f13, ABISELECT(1913,1337), 6, 1, 1, "S10035C1");
+    set_bf_and_test(lv, s10035c1f14, ABISELECT(1913,1337), 7, 1, 1, "S10035C1");
+    set_bf_and_test(lv, s10035c1f15, ABISELECT(1914,1338), 0, 1, 1, "S10035C1");
+    set_bf_and_test(lv, s10035c1f16, ABISELECT(1914,1338), 1, 1, 1, "S10035C1");
+    check_field_offset(lv, s10035c1f17, ABISELECT(1915,1339), "S10035C1.s10035c1f17");
+    check_field_offset(lv, s10035c1f18, ABISELECT(1916,1340), "S10035C1.s10035c1f18");
+    check_field_offset(lv, s10035c1f19, ABISELECT(1917,1341), "S10035C1.s10035c1f19");
+    test_class_info(&lv, &cd_S10035C1);
+    dp->~S10035C1();
+  }
+  Check_Ctor_Dtor_Calls(lvp);
+}
+static Arrange_To_Call_Me vS10035C1(Test_S10035C1, "S10035C1", ABISELECT(1920,1344));
+
+#else // __cplusplus
+
+extern void _ZN8S10035C1C1Ev();
+extern void _ZN8S10035C1D1Ev();
+Name_Map name_map_S10035C1[] = {
+  NSPAIR(_ZN8S10035C1C1Ev),
+  NSPAIR(_ZN8S10035C1D1Ev),
+  {0,0}
+};
+extern Class_Descriptor cd_S10035C2;
+extern VTBL_ENTRY _ZTI8S10035C2[];
+extern  VTBL_ENTRY _ZTV8S10035C2[];
+static Base_Class bases_S10035C1[] = {
+  // ofst, vfto, nneg, vtt_idx, base_vtt_idx, init_seq, direct, virtual
+  {&cd_S10035C2,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    1, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {0}};
+extern VTBL_ENTRY _ZTI8S10035C1[];
+extern void _ZN8S10035C1D1Ev();
+extern void _ZN8S10035C1D0Ev();
+extern void _ZN8S10035C22v6Ev();
+extern void _ZN8S10035C22v7Ev();
+extern void _ZN8S10035C22v8Ev();
+extern void _ZN8S10035C22v9Ev();
+extern void _ZN8S10035C23v10Ev();
+extern void _ZN8S10035C23v11Ev();
+extern void _ZN8S10035C23v12Ev();
+extern void _ZN8S10035C23v13Ev();
+extern void _ZN8S10035C23v14Ev();
+extern void _ZN8S10035C23v15Ev();
+extern void _ZN8S10035C23v16Ev();
+extern void _ZN8S10035C23v17Ev();
+extern void _ZN8S10035C23v18Ev();
+extern void _ZN8S10035C23v19Ev();
+extern void _ZN8S10035C23v20Ev();
+extern void _ZN8S10035C23v21Ev();
+extern void _ZN8S10035C23v22Ev();
+extern void _ZN8S10035C23v23Ev();
+extern void _ZN8S10035C12v1Ev();
+extern void _ZN8S10035C12v2Ev();
+extern void _ZN8S10035C12v3Ev();
+extern void _ZN8S10035C12v4Ev();
+extern void _ZN8S10035C12v5Ev();
+static  VTBL_ENTRY vtc_S10035C1[] = {
+  0,
+  (VTBL_ENTRY)&(_ZTI8S10035C1[0]),
+  (VTBL_ENTRY)&_ZN8S10035C1D1Ev,
+  (VTBL_ENTRY)&_ZN8S10035C1D0Ev,
+  (VTBL_ENTRY)&_ZN8S10035C22v6Ev,
+  (VTBL_ENTRY)&_ZN8S10035C22v7Ev,
+  (VTBL_ENTRY)&_ZN8S10035C22v8Ev,
+  (VTBL_ENTRY)&_ZN8S10035C22v9Ev,
+  (VTBL_ENTRY)&_ZN8S10035C23v10Ev,
+  (VTBL_ENTRY)&_ZN8S10035C23v11Ev,
+  (VTBL_ENTRY)&_ZN8S10035C23v12Ev,
+  (VTBL_ENTRY)&_ZN8S10035C23v13Ev,
+  (VTBL_ENTRY)&_ZN8S10035C23v14Ev,
+  (VTBL_ENTRY)&_ZN8S10035C23v15Ev,
+  (VTBL_ENTRY)&_ZN8S10035C23v16Ev,
+  (VTBL_ENTRY)&_ZN8S10035C23v17Ev,
+  (VTBL_ENTRY)&_ZN8S10035C23v18Ev,
+  (VTBL_ENTRY)&_ZN8S10035C23v19Ev,
+  (VTBL_ENTRY)&_ZN8S10035C23v20Ev,
+  (VTBL_ENTRY)&_ZN8S10035C23v21Ev,
+  (VTBL_ENTRY)&_ZN8S10035C23v22Ev,
+  (VTBL_ENTRY)&_ZN8S10035C23v23Ev,
+  (VTBL_ENTRY)&_ZN8S10035C12v1Ev,
+  (VTBL_ENTRY)&_ZN8S10035C12v2Ev,
+  (VTBL_ENTRY)&_ZN8S10035C12v3Ev,
+  (VTBL_ENTRY)&_ZN8S10035C12v4Ev,
+  (VTBL_ENTRY)&_ZN8S10035C12v5Ev,
+};
+extern VTBL_ENTRY _ZTI8S10035C1[];
+extern  VTBL_ENTRY _ZTV8S10035C1[];
+Class_Descriptor cd_S10035C1 = {  "S10035C1", // class name
+  bases_S10035C1, 1,
+  &(vtc_S10035C1[0]), // expected_vtbl_contents
+  0, //no vtt
+  ABISELECT(1920,1344), // object size
+  NSPAIRA(_ZTI8S10035C1),ABISELECT(24,12), //typeinfo_var
+  NSPAIRA(_ZTV8S10035C1),27, //virtual function table var
+  2, // offset into main vftv pointed to by object[0]
+  {0,0},0, // virtual table table var
+  1, // n_initialized_bases
+  0, // has_virtual_bases
+  1, // has_class_type_fields
+  0, // alt-thunk-names
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S15362C4  {
+  ::S6491C20_nt s15362c4f0;
+  unsigned int s15362c4f1:1;
+  virtual  ~S15362C4(); // _ZN8S15362C4D1Ev
+  virtual void  v3(); // _ZN8S15362C42v3Ev
+  virtual void  v4(); // _ZN8S15362C42v4Ev
+  virtual void  v5(); // _ZN8S15362C42v5Ev
+  virtual void  v6(); // _ZN8S15362C42v6Ev
+  virtual void  v7(); // _ZN8S15362C42v7Ev
+  virtual void  v8(); // _ZN8S15362C42v8Ev
+  virtual void  v9(); // _ZN8S15362C42v9Ev
+  S15362C4(); // tgen
+};
+//SIG(-1 S15362C4) C1{ vd v1 v2 v3 v4 v5 v6 v7 FC2{ m Fp[3]} Fi:1}
+
+
+ S15362C4 ::~S15362C4(){ note_dtor("S15362C4", this);}
+void  S15362C4 ::v3(){vfunc_called(this, "_ZN8S15362C42v3Ev");}
+void  S15362C4 ::v4(){vfunc_called(this, "_ZN8S15362C42v4Ev");}
+void  S15362C4 ::v5(){vfunc_called(this, "_ZN8S15362C42v5Ev");}
+void  S15362C4 ::v6(){vfunc_called(this, "_ZN8S15362C42v6Ev");}
+void  S15362C4 ::v7(){vfunc_called(this, "_ZN8S15362C42v7Ev");}
+void  S15362C4 ::v8(){vfunc_called(this, "_ZN8S15362C42v8Ev");}
+void  S15362C4 ::v9(){vfunc_called(this, "_ZN8S15362C42v9Ev");}
+S15362C4 ::S15362C4(){ note_ctor("S15362C4", this);} // tgen
+
+static void Test_S15362C4()
+{
+  extern Class_Descriptor cd_S15362C4;
+  void *lvp;
+  {
+    ABISELECT(double,int) buf[6];
+    init_test(&cd_S15362C4, buf);
+    S15362C4 *dp, &lv = *(dp=new (buf) S15362C4());
+    lvp = (void*)&lv;
+    check2(sizeof(lv), ABISELECT(40,20), "sizeof(S15362C4)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S15362C4)");
+    check_field_offset(lv, s15362c4f0, ABISELECT(8,4), "S15362C4.s15362c4f0");
+    set_bf_and_test(lv, s15362c4f1, ABISELECT(32,16), 0, 1, 1, "S15362C4");
+    test_class_info(&lv, &cd_S15362C4);
+    dp->~S15362C4();
+  }
+  Check_Ctor_Dtor_Calls(lvp);
+}
+static Arrange_To_Call_Me vS15362C4(Test_S15362C4, "S15362C4", ABISELECT(40,20));
+
+#else // __cplusplus
+
+extern void _ZN8S15362C4C1Ev();
+extern void _ZN8S15362C4D1Ev();
+Name_Map name_map_S15362C4[] = {
+  NSPAIR(_ZN8S15362C4C1Ev),
+  NSPAIR(_ZN8S15362C4D1Ev),
+  {0,0}
+};
+extern VTBL_ENTRY _ZTI8S15362C4[];
+extern void _ZN8S15362C4D1Ev();
+extern void _ZN8S15362C4D0Ev();
+extern void _ZN8S15362C42v3Ev();
+extern void _ZN8S15362C42v4Ev();
+extern void _ZN8S15362C42v5Ev();
+extern void _ZN8S15362C42v6Ev();
+extern void _ZN8S15362C42v7Ev();
+extern void _ZN8S15362C42v8Ev();
+extern void _ZN8S15362C42v9Ev();
+static  VTBL_ENTRY vtc_S15362C4[] = {
+  0,
+  (VTBL_ENTRY)&(_ZTI8S15362C4[0]),
+  (VTBL_ENTRY)&_ZN8S15362C4D1Ev,
+  (VTBL_ENTRY)&_ZN8S15362C4D0Ev,
+  (VTBL_ENTRY)&_ZN8S15362C42v3Ev,
+  (VTBL_ENTRY)&_ZN8S15362C42v4Ev,
+  (VTBL_ENTRY)&_ZN8S15362C42v5Ev,
+  (VTBL_ENTRY)&_ZN8S15362C42v6Ev,
+  (VTBL_ENTRY)&_ZN8S15362C42v7Ev,
+  (VTBL_ENTRY)&_ZN8S15362C42v8Ev,
+  (VTBL_ENTRY)&_ZN8S15362C42v9Ev,
+};
+extern VTBL_ENTRY _ZTI8S15362C4[];
+extern  VTBL_ENTRY _ZTV8S15362C4[];
+Class_Descriptor cd_S15362C4 = {  "S15362C4", // class name
+  0,0,//no base classes
+  &(vtc_S15362C4[0]), // expected_vtbl_contents
+  0, //no vtt
+  ABISELECT(40,20), // object size
+  NSPAIRA(_ZTI8S15362C4),ABISELECT(16,8), //typeinfo_var
+  NSPAIRA(_ZTV8S15362C4),11, //virtual function table var
+  2, // offset into main vftv pointed to by object[0]
+  {0,0},0, // virtual table table var
+  0, // n_initialized_bases
+  0, // has_virtual_bases
+  1, // has_class_type_fields
+  0, // alt-thunk-names
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S15362C3  : S15362C4 {
+  ::S17824C34 s15362c3f0;
+  virtual  ~S15362C3(); // _ZN8S15362C3D1Ev
+  virtual void  v10(); // _ZN8S15362C33v10Ev
+  virtual void  v11(); // _ZN8S15362C33v11Ev
+  S15362C3(); // tgen
+};
+//SIG(-1 S15362C3) C1{ BC2{ vd v3 v4 v5 v6 v7 v8 v9 FC3{ m Fp[3]} Fi:1} vd v1 v2 FC4{ m Fp}}
+
+
+ S15362C3 ::~S15362C3(){ note_dtor("S15362C3", this);}
+void  S15362C3 ::v10(){vfunc_called(this, "_ZN8S15362C33v10Ev");}
+void  S15362C3 ::v11(){vfunc_called(this, "_ZN8S15362C33v11Ev");}
+S15362C3 ::S15362C3(){ note_ctor("S15362C3", this);} // tgen
+
+static void Test_S15362C3()
+{
+  extern Class_Descriptor cd_S15362C3;
+  void *lvp;
+  {
+    ABISELECT(double,int) buf[7];
+    init_test(&cd_S15362C3, buf);
+    S15362C3 *dp, &lv = *(dp=new (buf) S15362C3());
+    lvp = (void*)&lv;
+    check2(sizeof(lv), ABISELECT(48,24), "sizeof(S15362C3)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S15362C3)");
+    check_base_class_offset(lv, (S15362C4*), 0, "S15362C3");
+    check_field_offset(lv, s15362c3f0, ABISELECT(40,20), "S15362C3.s15362c3f0");
+    test_class_info(&lv, &cd_S15362C3);
+    dp->~S15362C3();
+  }
+  Check_Ctor_Dtor_Calls(lvp);
+}
+static Arrange_To_Call_Me vS15362C3(Test_S15362C3, "S15362C3", ABISELECT(48,24));
+
+#else // __cplusplus
+
+extern void _ZN8S15362C3C1Ev();
+extern void _ZN8S15362C3D1Ev();
+Name_Map name_map_S15362C3[] = {
+  NSPAIR(_ZN8S15362C3C1Ev),
+  NSPAIR(_ZN8S15362C3D1Ev),
+  {0,0}
+};
+extern Class_Descriptor cd_S15362C4;
+extern VTBL_ENTRY _ZTI8S15362C4[];
+extern  VTBL_ENTRY _ZTV8S15362C4[];
+static Base_Class bases_S15362C3[] = {
+  // ofst, vfto, nneg, vtt_idx, base_vtt_idx, init_seq, direct, virtual
+  {&cd_S15362C4,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    1, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {0}};
+extern VTBL_ENTRY _ZTI8S15362C3[];
+extern void _ZN8S15362C3D1Ev();
+extern void _ZN8S15362C3D0Ev();
+extern void _ZN8S15362C42v3Ev();
+extern void _ZN8S15362C42v4Ev();
+extern void _ZN8S15362C42v5Ev();
+extern void _ZN8S15362C42v6Ev();
+extern void _ZN8S15362C42v7Ev();
+extern void _ZN8S15362C42v8Ev();
+extern void _ZN8S15362C42v9Ev();
+extern void _ZN8S15362C33v10Ev();
+extern void _ZN8S15362C33v11Ev();
+static  VTBL_ENTRY vtc_S15362C3[] = {
+  0,
+  (VTBL_ENTRY)&(_ZTI8S15362C3[0]),
+  (VTBL_ENTRY)&_ZN8S15362C3D1Ev,
+  (VTBL_ENTRY)&_ZN8S15362C3D0Ev,
+  (VTBL_ENTRY)&_ZN8S15362C42v3Ev,
+  (VTBL_ENTRY)&_ZN8S15362C42v4Ev,
+  (VTBL_ENTRY)&_ZN8S15362C42v5Ev,
+  (VTBL_ENTRY)&_ZN8S15362C42v6Ev,
+  (VTBL_ENTRY)&_ZN8S15362C42v7Ev,
+  (VTBL_ENTRY)&_ZN8S15362C42v8Ev,
+  (VTBL_ENTRY)&_ZN8S15362C42v9Ev,
+  (VTBL_ENTRY)&_ZN8S15362C33v10Ev,
+  (VTBL_ENTRY)&_ZN8S15362C33v11Ev,
+};
+extern VTBL_ENTRY _ZTI8S15362C3[];
+extern  VTBL_ENTRY _ZTV8S15362C3[];
+Class_Descriptor cd_S15362C3 = {  "S15362C3", // class name
+  bases_S15362C3, 1,
+  &(vtc_S15362C3[0]), // expected_vtbl_contents
+  0, //no vtt
+  ABISELECT(48,24), // object size
+  NSPAIRA(_ZTI8S15362C3),ABISELECT(24,12), //typeinfo_var
+  NSPAIRA(_ZTV8S15362C3),13, //virtual function table var
+  2, // offset into main vftv pointed to by object[0]
+  {0,0},0, // virtual table table var
+  1, // n_initialized_bases
+  0, // has_virtual_bases
+  1, // has_class_type_fields
+  0, // alt-thunk-names
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S15362C2  : S15362C3 {
+  void *s15362c2f0;
+  int s15362c2f1;
+  void *s15362c2f2;
+  int s15362c2f3[3];
+  virtual  ~S15362C2(); // _ZN8S15362C2D1Ev
+  virtual void  v1(); // _ZN8S15362C22v1Ev
+  virtual void  v2(); // _ZN8S15362C22v2Ev
+  S15362C2(); // tgen
+};
+//SIG(-1 S15362C2) C1{ BC2{ BC3{ vd v3 v4 v5 v6 v7 v8 v9 FC4{ m Fp[3]} Fi:1} vd v10 v11 FC5{ m Fp}} vd v1 v2 Fp Fi Fp Fi[3]}
+
+
+ S15362C2 ::~S15362C2(){ note_dtor("S15362C2", this);}
+void  S15362C2 ::v1(){vfunc_called(this, "_ZN8S15362C22v1Ev");}
+void  S15362C2 ::v2(){vfunc_called(this, "_ZN8S15362C22v2Ev");}
+S15362C2 ::S15362C2(){ note_ctor("S15362C2", this);} // tgen
+
+static void Test_S15362C2()
+{
+  extern Class_Descriptor cd_S15362C2;
+  void *lvp;
+  {
+    ABISELECT(double,int) buf[ABISELECT(12,13)];
+    init_test(&cd_S15362C2, buf);
+    S15362C2 *dp, &lv = *(dp=new (buf) S15362C2());
+    lvp = (void*)&lv;
+    check2(sizeof(lv), ABISELECT(88,48), "sizeof(S15362C2)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S15362C2)");
+    check_base_class_offset(lv, (S15362C4*)(S15362C3*), 0, "S15362C2");
+    check_base_class_offset(lv, (S15362C3*), 0, "S15362C2");
+    check_field_offset(lv, s15362c2f0, ABISELECT(48,24), "S15362C2.s15362c2f0");
+    check_field_offset(lv, s15362c2f1, ABISELECT(56,28), "S15362C2.s15362c2f1");
+    check_field_offset(lv, s15362c2f2, ABISELECT(64,32), "S15362C2.s15362c2f2");
+    check_field_offset(lv, s15362c2f3, ABISELECT(72,36), "S15362C2.s15362c2f3");
+    test_class_info(&lv, &cd_S15362C2);
+    dp->~S15362C2();
+  }
+  Check_Ctor_Dtor_Calls(lvp);
+}
+static Arrange_To_Call_Me vS15362C2(Test_S15362C2, "S15362C2", ABISELECT(88,48));
+
+#else // __cplusplus
+
+extern void _ZN8S15362C2C1Ev();
+extern void _ZN8S15362C2D1Ev();
+Name_Map name_map_S15362C2[] = {
+  NSPAIR(_ZN8S15362C2C1Ev),
+  NSPAIR(_ZN8S15362C2D1Ev),
+  {0,0}
+};
+extern Class_Descriptor cd_S15362C4;
+extern VTBL_ENTRY _ZTI8S15362C4[];
+extern  VTBL_ENTRY _ZTV8S15362C4[];
+extern Class_Descriptor cd_S15362C3;
+extern VTBL_ENTRY _ZTI8S15362C3[];
+extern  VTBL_ENTRY _ZTV8S15362C3[];
+static Base_Class bases_S15362C2[] = {
+  // ofst, vfto, nneg, vtt_idx, base_vtt_idx, init_seq, direct, virtual
+  {&cd_S15362C4,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    1, //init_seq
+    1, //immediately_derived
+  0, 0},
+  {&cd_S15362C3,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    2, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {0}};
+extern VTBL_ENTRY _ZTI8S15362C2[];
+extern void _ZN8S15362C2D1Ev();
+extern void _ZN8S15362C2D0Ev();
+extern void _ZN8S15362C42v3Ev();
+extern void _ZN8S15362C42v4Ev();
+extern void _ZN8S15362C42v5Ev();
+extern void _ZN8S15362C42v6Ev();
+extern void _ZN8S15362C42v7Ev();
+extern void _ZN8S15362C42v8Ev();
+extern void _ZN8S15362C42v9Ev();
+extern void _ZN8S15362C33v10Ev();
+extern void _ZN8S15362C33v11Ev();
+extern void _ZN8S15362C22v1Ev();
+extern void _ZN8S15362C22v2Ev();
+static  VTBL_ENTRY vtc_S15362C2[] = {
+  0,
+  (VTBL_ENTRY)&(_ZTI8S15362C2[0]),
+  (VTBL_ENTRY)&_ZN8S15362C2D1Ev,
+  (VTBL_ENTRY)&_ZN8S15362C2D0Ev,
+  (VTBL_ENTRY)&_ZN8S15362C42v3Ev,
+  (VTBL_ENTRY)&_ZN8S15362C42v4Ev,
+  (VTBL_ENTRY)&_ZN8S15362C42v5Ev,
+  (VTBL_ENTRY)&_ZN8S15362C42v6Ev,
+  (VTBL_ENTRY)&_ZN8S15362C42v7Ev,
+  (VTBL_ENTRY)&_ZN8S15362C42v8Ev,
+  (VTBL_ENTRY)&_ZN8S15362C42v9Ev,
+  (VTBL_ENTRY)&_ZN8S15362C33v10Ev,
+  (VTBL_ENTRY)&_ZN8S15362C33v11Ev,
+  (VTBL_ENTRY)&_ZN8S15362C22v1Ev,
+  (VTBL_ENTRY)&_ZN8S15362C22v2Ev,
+};
+extern VTBL_ENTRY _ZTI8S15362C2[];
+extern  VTBL_ENTRY _ZTV8S15362C2[];
+Class_Descriptor cd_S15362C2 = {  "S15362C2", // class name
+  bases_S15362C2, 2,
+  &(vtc_S15362C2[0]), // expected_vtbl_contents
+  0, //no vtt
+  ABISELECT(88,48), // object size
+  NSPAIRA(_ZTI8S15362C2),ABISELECT(24,12), //typeinfo_var
+  NSPAIRA(_ZTV8S15362C2),15, //virtual function table var
+  2, // offset into main vftv pointed to by object[0]
+  {0,0},0, // virtual table table var
+  2, // n_initialized_bases
+  0, // has_virtual_bases
+  1, // has_class_type_fields
+  0, // alt-thunk-names
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S15362C7  : S15362C3 {
+  void *s15362c7f0[2];
+  int s15362c7f1[2];
+  virtual  ~S15362C7(); // _ZN8S15362C7D1Ev
+  virtual void  v12(); // _ZN8S15362C73v12Ev
+  virtual void  v13(); // _ZN8S15362C73v13Ev
+  S15362C7(); // tgen
+};
+//SIG(-1 S15362C7) C1{ BC2{ BC3{ vd v3 v4 v5 v6 v7 v8 v9 FC4{ m Fp[3]} Fi:1} vd v10 v11 FC5{ m Fp}} vd v1 v2 Fp[2] Fi[2]}
+
+
+ S15362C7 ::~S15362C7(){ note_dtor("S15362C7", this);}
+void  S15362C7 ::v12(){vfunc_called(this, "_ZN8S15362C73v12Ev");}
+void  S15362C7 ::v13(){vfunc_called(this, "_ZN8S15362C73v13Ev");}
+S15362C7 ::S15362C7(){ note_ctor("S15362C7", this);} // tgen
+
+static void Test_S15362C7()
+{
+  extern Class_Descriptor cd_S15362C7;
+  void *lvp;
+  {
+    ABISELECT(double,int) buf[ABISELECT(10,11)];
+    init_test(&cd_S15362C7, buf);
+    S15362C7 *dp, &lv = *(dp=new (buf) S15362C7());
+    lvp = (void*)&lv;
+    check2(sizeof(lv), ABISELECT(72,40), "sizeof(S15362C7)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S15362C7)");
+    check_base_class_offset(lv, (S15362C4*)(S15362C3*), 0, "S15362C7");
+    check_base_class_offset(lv, (S15362C3*), 0, "S15362C7");
+    check_field_offset(lv, s15362c7f0, ABISELECT(48,24), "S15362C7.s15362c7f0");
+    check_field_offset(lv, s15362c7f1, ABISELECT(64,32), "S15362C7.s15362c7f1");
+    test_class_info(&lv, &cd_S15362C7);
+    dp->~S15362C7();
+  }
+  Check_Ctor_Dtor_Calls(lvp);
+}
+static Arrange_To_Call_Me vS15362C7(Test_S15362C7, "S15362C7", ABISELECT(72,40));
+
+#else // __cplusplus
+
+extern void _ZN8S15362C7C1Ev();
+extern void _ZN8S15362C7D1Ev();
+Name_Map name_map_S15362C7[] = {
+  NSPAIR(_ZN8S15362C7C1Ev),
+  NSPAIR(_ZN8S15362C7D1Ev),
+  {0,0}
+};
+extern Class_Descriptor cd_S15362C4;
+extern VTBL_ENTRY _ZTI8S15362C4[];
+extern  VTBL_ENTRY _ZTV8S15362C4[];
+extern Class_Descriptor cd_S15362C3;
+extern VTBL_ENTRY _ZTI8S15362C3[];
+extern  VTBL_ENTRY _ZTV8S15362C3[];
+static Base_Class bases_S15362C7[] = {
+  // ofst, vfto, nneg, vtt_idx, base_vtt_idx, init_seq, direct, virtual
+  {&cd_S15362C4,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    1, //init_seq
+    1, //immediately_derived
+  0, 0},
+  {&cd_S15362C3,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    2, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {0}};
+extern VTBL_ENTRY _ZTI8S15362C7[];
+extern void _ZN8S15362C7D1Ev();
+extern void _ZN8S15362C7D0Ev();
+extern void _ZN8S15362C42v3Ev();
+extern void _ZN8S15362C42v4Ev();
+extern void _ZN8S15362C42v5Ev();
+extern void _ZN8S15362C42v6Ev();
+extern void _ZN8S15362C42v7Ev();
+extern void _ZN8S15362C42v8Ev();
+extern void _ZN8S15362C42v9Ev();
+extern void _ZN8S15362C33v10Ev();
+extern void _ZN8S15362C33v11Ev();
+extern void _ZN8S15362C73v12Ev();
+extern void _ZN8S15362C73v13Ev();
+static  VTBL_ENTRY vtc_S15362C7[] = {
+  0,
+  (VTBL_ENTRY)&(_ZTI8S15362C7[0]),
+  (VTBL_ENTRY)&_ZN8S15362C7D1Ev,
+  (VTBL_ENTRY)&_ZN8S15362C7D0Ev,
+  (VTBL_ENTRY)&_ZN8S15362C42v3Ev,
+  (VTBL_ENTRY)&_ZN8S15362C42v4Ev,
+  (VTBL_ENTRY)&_ZN8S15362C42v5Ev,
+  (VTBL_ENTRY)&_ZN8S15362C42v6Ev,
+  (VTBL_ENTRY)&_ZN8S15362C42v7Ev,
+  (VTBL_ENTRY)&_ZN8S15362C42v8Ev,
+  (VTBL_ENTRY)&_ZN8S15362C42v9Ev,
+  (VTBL_ENTRY)&_ZN8S15362C33v10Ev,
+  (VTBL_ENTRY)&_ZN8S15362C33v11Ev,
+  (VTBL_ENTRY)&_ZN8S15362C73v12Ev,
+  (VTBL_ENTRY)&_ZN8S15362C73v13Ev,
+};
+extern VTBL_ENTRY _ZTI8S15362C7[];
+extern  VTBL_ENTRY _ZTV8S15362C7[];
+Class_Descriptor cd_S15362C7 = {  "S15362C7", // class name
+  bases_S15362C7, 2,
+  &(vtc_S15362C7[0]), // expected_vtbl_contents
+  0, //no vtt
+  ABISELECT(72,40), // object size
+  NSPAIRA(_ZTI8S15362C7),ABISELECT(24,12), //typeinfo_var
+  NSPAIRA(_ZTV8S15362C7),15, //virtual function table var
+  2, // offset into main vftv pointed to by object[0]
+  {0,0},0, // virtual table table var
+  2, // n_initialized_bases
+  0, // has_virtual_bases
+  1, // has_class_type_fields
+  0, // alt-thunk-names
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S15362C8  : S15362C3 {
+  void *s15362c8f0[2];
+  int s15362c8f1[2];
+  virtual  ~S15362C8(); // _ZN8S15362C8D1Ev
+  virtual void  v14(); // _ZN8S15362C83v14Ev
+  S15362C8(); // tgen
+};
+//SIG(-1 S15362C8) C1{ BC2{ BC3{ vd v2 v3 v4 v5 v6 v7 v8 FC4{ m Fp[3]} Fi:1} vd v9 v10 FC5{ m Fp}} vd v1 Fp[2] Fi[2]}
+
+
+ S15362C8 ::~S15362C8(){ note_dtor("S15362C8", this);}
+void  S15362C8 ::v14(){vfunc_called(this, "_ZN8S15362C83v14Ev");}
+S15362C8 ::S15362C8(){ note_ctor("S15362C8", this);} // tgen
+
+static void Test_S15362C8()
+{
+  extern Class_Descriptor cd_S15362C8;
+  void *lvp;
+  {
+    ABISELECT(double,int) buf[ABISELECT(10,11)];
+    init_test(&cd_S15362C8, buf);
+    S15362C8 *dp, &lv = *(dp=new (buf) S15362C8());
+    lvp = (void*)&lv;
+    check2(sizeof(lv), ABISELECT(72,40), "sizeof(S15362C8)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S15362C8)");
+    check_base_class_offset(lv, (S15362C4*)(S15362C3*), 0, "S15362C8");
+    check_base_class_offset(lv, (S15362C3*), 0, "S15362C8");
+    check_field_offset(lv, s15362c8f0, ABISELECT(48,24), "S15362C8.s15362c8f0");
+    check_field_offset(lv, s15362c8f1, ABISELECT(64,32), "S15362C8.s15362c8f1");
+    test_class_info(&lv, &cd_S15362C8);
+    dp->~S15362C8();
+  }
+  Check_Ctor_Dtor_Calls(lvp);
+}
+static Arrange_To_Call_Me vS15362C8(Test_S15362C8, "S15362C8", ABISELECT(72,40));
+
+#else // __cplusplus
+
+extern void _ZN8S15362C8C1Ev();
+extern void _ZN8S15362C8D1Ev();
+Name_Map name_map_S15362C8[] = {
+  NSPAIR(_ZN8S15362C8C1Ev),
+  NSPAIR(_ZN8S15362C8D1Ev),
+  {0,0}
+};
+extern Class_Descriptor cd_S15362C4;
+extern VTBL_ENTRY _ZTI8S15362C4[];
+extern  VTBL_ENTRY _ZTV8S15362C4[];
+extern Class_Descriptor cd_S15362C3;
+extern VTBL_ENTRY _ZTI8S15362C3[];
+extern  VTBL_ENTRY _ZTV8S15362C3[];
+static Base_Class bases_S15362C8[] = {
+  // ofst, vfto, nneg, vtt_idx, base_vtt_idx, init_seq, direct, virtual
+  {&cd_S15362C4,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    1, //init_seq
+    1, //immediately_derived
+  0, 0},
+  {&cd_S15362C3,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    2, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {0}};
+extern VTBL_ENTRY _ZTI8S15362C8[];
+extern void _ZN8S15362C8D1Ev();
+extern void _ZN8S15362C8D0Ev();
+extern void _ZN8S15362C42v3Ev();
+extern void _ZN8S15362C42v4Ev();
+extern void _ZN8S15362C42v5Ev();
+extern void _ZN8S15362C42v6Ev();
+extern void _ZN8S15362C42v7Ev();
+extern void _ZN8S15362C42v8Ev();
+extern void _ZN8S15362C42v9Ev();
+extern void _ZN8S15362C33v10Ev();
+extern void _ZN8S15362C33v11Ev();
+extern void _ZN8S15362C83v14Ev();
+static  VTBL_ENTRY vtc_S15362C8[] = {
+  0,
+  (VTBL_ENTRY)&(_ZTI8S15362C8[0]),
+  (VTBL_ENTRY)&_ZN8S15362C8D1Ev,
+  (VTBL_ENTRY)&_ZN8S15362C8D0Ev,
+  (VTBL_ENTRY)&_ZN8S15362C42v3Ev,
+  (VTBL_ENTRY)&_ZN8S15362C42v4Ev,
+  (VTBL_ENTRY)&_ZN8S15362C42v5Ev,
+  (VTBL_ENTRY)&_ZN8S15362C42v6Ev,
+  (VTBL_ENTRY)&_ZN8S15362C42v7Ev,
+  (VTBL_ENTRY)&_ZN8S15362C42v8Ev,
+  (VTBL_ENTRY)&_ZN8S15362C42v9Ev,
+  (VTBL_ENTRY)&_ZN8S15362C33v10Ev,
+  (VTBL_ENTRY)&_ZN8S15362C33v11Ev,
+  (VTBL_ENTRY)&_ZN8S15362C83v14Ev,
+};
+extern VTBL_ENTRY _ZTI8S15362C8[];
+extern  VTBL_ENTRY _ZTV8S15362C8[];
+Class_Descriptor cd_S15362C8 = {  "S15362C8", // class name
+  bases_S15362C8, 2,
+  &(vtc_S15362C8[0]), // expected_vtbl_contents
+  0, //no vtt
+  ABISELECT(72,40), // object size
+  NSPAIRA(_ZTI8S15362C8),ABISELECT(24,12), //typeinfo_var
+  NSPAIRA(_ZTV8S15362C8),14, //virtual function table var
+  2, // offset into main vftv pointed to by object[0]
+  {0,0},0, // virtual table table var
+  2, // n_initialized_bases
+  0, // has_virtual_bases
+  1, // has_class_type_fields
+  0, // alt-thunk-names
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S15362C10  : S15362C4 {
+  ::S17824C7_nt s15362c10f0;
+  virtual  ~S15362C10(); // _ZN9S15362C10D1Ev
+  virtual void  v16(); // _ZN9S15362C103v16Ev
+  virtual void  v17(); // _ZN9S15362C103v17Ev
+  S15362C10(); // tgen
+};
+//SIG(-1 S15362C10) C1{ BC2{ vd v3 v4 v5 v6 v7 v8 v9 FC3{ m Fp[3]} Fi:1} vd v1 v2 FC4{ m Fp}}
+
+
+ S15362C10 ::~S15362C10(){ note_dtor("S15362C10", this);}
+void  S15362C10 ::v16(){vfunc_called(this, "_ZN9S15362C103v16Ev");}
+void  S15362C10 ::v17(){vfunc_called(this, "_ZN9S15362C103v17Ev");}
+S15362C10 ::S15362C10(){ note_ctor("S15362C10", this);} // tgen
+
+static void Test_S15362C10()
+{
+  extern Class_Descriptor cd_S15362C10;
+  void *lvp;
+  {
+    ABISELECT(double,int) buf[7];
+    init_test(&cd_S15362C10, buf);
+    S15362C10 *dp, &lv = *(dp=new (buf) S15362C10());
+    lvp = (void*)&lv;
+    check2(sizeof(lv), ABISELECT(48,24), "sizeof(S15362C10)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S15362C10)");
+    check_base_class_offset(lv, (S15362C4*), 0, "S15362C10");
+    check_field_offset(lv, s15362c10f0, ABISELECT(40,20), "S15362C10.s15362c10f0");
+    test_class_info(&lv, &cd_S15362C10);
+    dp->~S15362C10();
+  }
+  Check_Ctor_Dtor_Calls(lvp);
+}
+static Arrange_To_Call_Me vS15362C10(Test_S15362C10, "S15362C10", ABISELECT(48,24));
+
+#else // __cplusplus
+
+extern void _ZN9S15362C10C1Ev();
+extern void _ZN9S15362C10D1Ev();
+Name_Map name_map_S15362C10[] = {
+  NSPAIR(_ZN9S15362C10C1Ev),
+  NSPAIR(_ZN9S15362C10D1Ev),
+  {0,0}
+};
+extern Class_Descriptor cd_S15362C4;
+extern VTBL_ENTRY _ZTI8S15362C4[];
+extern  VTBL_ENTRY _ZTV8S15362C4[];
+static Base_Class bases_S15362C10[] = {
+  // ofst, vfto, nneg, vtt_idx, base_vtt_idx, init_seq, direct, virtual
+  {&cd_S15362C4,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    1, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {0}};
+extern VTBL_ENTRY _ZTI9S15362C10[];
+extern void _ZN9S15362C10D1Ev();
+extern void _ZN9S15362C10D0Ev();
+extern void _ZN8S15362C42v3Ev();
+extern void _ZN8S15362C42v4Ev();
+extern void _ZN8S15362C42v5Ev();
+extern void _ZN8S15362C42v6Ev();
+extern void _ZN8S15362C42v7Ev();
+extern void _ZN8S15362C42v8Ev();
+extern void _ZN8S15362C42v9Ev();
+extern void _ZN9S15362C103v16Ev();
+extern void _ZN9S15362C103v17Ev();
+static  VTBL_ENTRY vtc_S15362C10[] = {
+  0,
+  (VTBL_ENTRY)&(_ZTI9S15362C10[0]),
+  (VTBL_ENTRY)&_ZN9S15362C10D1Ev,
+  (VTBL_ENTRY)&_ZN9S15362C10D0Ev,
+  (VTBL_ENTRY)&_ZN8S15362C42v3Ev,
+  (VTBL_ENTRY)&_ZN8S15362C42v4Ev,
+  (VTBL_ENTRY)&_ZN8S15362C42v5Ev,
+  (VTBL_ENTRY)&_ZN8S15362C42v6Ev,
+  (VTBL_ENTRY)&_ZN8S15362C42v7Ev,
+  (VTBL_ENTRY)&_ZN8S15362C42v8Ev,
+  (VTBL_ENTRY)&_ZN8S15362C42v9Ev,
+  (VTBL_ENTRY)&_ZN9S15362C103v16Ev,
+  (VTBL_ENTRY)&_ZN9S15362C103v17Ev,
+};
+extern VTBL_ENTRY _ZTI9S15362C10[];
+extern  VTBL_ENTRY _ZTV9S15362C10[];
+Class_Descriptor cd_S15362C10 = {  "S15362C10", // class name
+  bases_S15362C10, 1,
+  &(vtc_S15362C10[0]), // expected_vtbl_contents
+  0, //no vtt
+  ABISELECT(48,24), // object size
+  NSPAIRA(_ZTI9S15362C10),ABISELECT(24,12), //typeinfo_var
+  NSPAIRA(_ZTV9S15362C10),13, //virtual function table var
+  2, // offset into main vftv pointed to by object[0]
+  {0,0},0, // virtual table table var
+  1, // n_initialized_bases
+  0, // has_virtual_bases
+  1, // has_class_type_fields
+  0, // alt-thunk-names
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S15362C9  : S15362C10 {
+  ::S6491C22 s15362c9f0;
+  virtual void  v15(); // _ZN8S15362C93v15Ev
+  ~S15362C9(); // tgen
+  S15362C9(); // tgen
+};
+//SIG(-1 S15362C9) C1{ BC2{ BC3{ vd v2 v3 v4 v5 v6 v7 v8 FC4{ m Fp[3]} Fi:1} vd v9 v10 FC5{ m Fp}} v1 FC6{ BC7{ BC8{ m Fp Fi[2]}} BC9{ v16 v17 v18 v19 v20} v11 v12 v13 v14 v15 Fi}}
+
+
+void  S15362C9 ::v15(){vfunc_called(this, "_ZN8S15362C93v15Ev");}
+S15362C9 ::~S15362C9(){ note_dtor("S15362C9", this);} // tgen
+S15362C9 ::S15362C9(){ note_ctor("S15362C9", this);} // tgen
+
+static void Test_S15362C9()
+{
+  extern Class_Descriptor cd_S15362C9;
+  void *lvp;
+  {
+    ABISELECT(double,int) buf[ABISELECT(11,12)];
+    init_test(&cd_S15362C9, buf);
+    S15362C9 *dp, &lv = *(dp=new (buf) S15362C9());
+    lvp = (void*)&lv;
+    check2(sizeof(lv), ABISELECT(80,44), "sizeof(S15362C9)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S15362C9)");
+    check_base_class_offset(lv, (S15362C4*)(S15362C10*), 0, "S15362C9");
+    check_base_class_offset(lv, (S15362C10*), 0, "S15362C9");
+    check_field_offset(lv, s15362c9f0, ABISELECT(48,24), "S15362C9.s15362c9f0");
+    test_class_info(&lv, &cd_S15362C9);
+    dp->~S15362C9();
+  }
+  Check_Ctor_Dtor_Calls(lvp);
+}
+static Arrange_To_Call_Me vS15362C9(Test_S15362C9, "S15362C9", ABISELECT(80,44));
+
+#else // __cplusplus
+
+extern void _ZN8S15362C9C1Ev();
+extern void _ZN8S15362C9D1Ev();
+Name_Map name_map_S15362C9[] = {
+  NSPAIR(_ZN8S15362C9C1Ev),
+  NSPAIR(_ZN8S15362C9D1Ev),
+  {0,0}
+};
+extern Class_Descriptor cd_S15362C4;
+extern VTBL_ENTRY _ZTI8S15362C4[];
+extern  VTBL_ENTRY _ZTV8S15362C4[];
+extern Class_Descriptor cd_S15362C10;
+extern VTBL_ENTRY _ZTI9S15362C10[];
+extern  VTBL_ENTRY _ZTV9S15362C10[];
+static Base_Class bases_S15362C9[] = {
+  // ofst, vfto, nneg, vtt_idx, base_vtt_idx, init_seq, direct, virtual
+  {&cd_S15362C4,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    1, //init_seq
+    1, //immediately_derived
+  0, 0},
+  {&cd_S15362C10,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    2, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {0}};
+extern VTBL_ENTRY _ZTI8S15362C9[];
+extern void _ZN8S15362C9D1Ev();
+extern void _ZN8S15362C9D0Ev();
+extern void _ZN8S15362C42v3Ev();
+extern void _ZN8S15362C42v4Ev();
+extern void _ZN8S15362C42v5Ev();
+extern void _ZN8S15362C42v6Ev();
+extern void _ZN8S15362C42v7Ev();
+extern void _ZN8S15362C42v8Ev();
+extern void _ZN8S15362C42v9Ev();
+extern void _ZN9S15362C103v16Ev();
+extern void _ZN9S15362C103v17Ev();
+extern void _ZN8S15362C93v15Ev();
+static  VTBL_ENTRY vtc_S15362C9[] = {
+  0,
+  (VTBL_ENTRY)&(_ZTI8S15362C9[0]),
+  (VTBL_ENTRY)&_ZN8S15362C9D1Ev,
+  (VTBL_ENTRY)&_ZN8S15362C9D0Ev,
+  (VTBL_ENTRY)&_ZN8S15362C42v3Ev,
+  (VTBL_ENTRY)&_ZN8S15362C42v4Ev,
+  (VTBL_ENTRY)&_ZN8S15362C42v5Ev,
+  (VTBL_ENTRY)&_ZN8S15362C42v6Ev,
+  (VTBL_ENTRY)&_ZN8S15362C42v7Ev,
+  (VTBL_ENTRY)&_ZN8S15362C42v8Ev,
+  (VTBL_ENTRY)&_ZN8S15362C42v9Ev,
+  (VTBL_ENTRY)&_ZN9S15362C103v16Ev,
+  (VTBL_ENTRY)&_ZN9S15362C103v17Ev,
+  (VTBL_ENTRY)&_ZN8S15362C93v15Ev,
+};
+extern VTBL_ENTRY _ZTI8S15362C9[];
+extern  VTBL_ENTRY _ZTV8S15362C9[];
+Class_Descriptor cd_S15362C9 = {  "S15362C9", // class name
+  bases_S15362C9, 2,
+  &(vtc_S15362C9[0]), // expected_vtbl_contents
+  0, //no vtt
+  ABISELECT(80,44), // object size
+  NSPAIRA(_ZTI8S15362C9),ABISELECT(24,12), //typeinfo_var
+  NSPAIRA(_ZTV8S15362C9),14, //virtual function table var
+  2, // offset into main vftv pointed to by object[0]
+  {0,0},0, // virtual table table var
+  2, // n_initialized_bases
+  0, // has_virtual_bases
+  1, // has_class_type_fields
+  0, // alt-thunk-names
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S15362C22_nt  {
+  int s15362c22f0[8];
+  void *s15362c22f1;
+  int s15362c22f2;
+  void *s15362c22f3;
+  virtual  ~S15362C22_nt(); // _ZN12S15362C22_ntD1Ev
+  virtual void  v32(); // _ZN12S15362C22_nt3v32Ev
+  virtual void  v33(); // _ZN12S15362C22_nt3v33Ev
+  virtual void  v34(); // _ZN12S15362C22_nt3v34Ev
+  virtual void  v35(); // _ZN12S15362C22_nt3v35Ev
+  virtual void  v36(); // _ZN12S15362C22_nt3v36Ev
+  S15362C22_nt(); // tgen
+};
+//SIG(-1 S15362C22_nt) C1{ vd v1 v2 v3 v4 v5 Fi[8] Fp Fi Fp}
+
+
+ S15362C22_nt ::~S15362C22_nt(){ note_dtor("S15362C22_nt", this);}
+void  S15362C22_nt ::v32(){vfunc_called(this, "_ZN12S15362C22_nt3v32Ev");}
+void  S15362C22_nt ::v33(){vfunc_called(this, "_ZN12S15362C22_nt3v33Ev");}
+void  S15362C22_nt ::v34(){vfunc_called(this, "_ZN12S15362C22_nt3v34Ev");}
+void  S15362C22_nt ::v35(){vfunc_called(this, "_ZN12S15362C22_nt3v35Ev");}
+void  S15362C22_nt ::v36(){vfunc_called(this, "_ZN12S15362C22_nt3v36Ev");}
+S15362C22_nt ::S15362C22_nt(){ note_ctor("S15362C22_nt", this);} // tgen
+
+//skip512 S15362C22_nt
+
+#else // __cplusplus
+
+extern void _ZN12S15362C22_ntC1Ev();
+extern void _ZN12S15362C22_ntD1Ev();
+Name_Map name_map_S15362C22_nt[] = {
+  NSPAIR(_ZN12S15362C22_ntC1Ev),
+  NSPAIR(_ZN12S15362C22_ntD1Ev),
+  {0,0}
+};
+extern VTBL_ENTRY _ZTI12S15362C22_nt[];
+extern void _ZN12S15362C22_ntD1Ev();
+extern void _ZN12S15362C22_ntD0Ev();
+extern void _ZN12S15362C22_nt3v32Ev();
+extern void _ZN12S15362C22_nt3v33Ev();
+extern void _ZN12S15362C22_nt3v34Ev();
+extern void _ZN12S15362C22_nt3v35Ev();
+extern void _ZN12S15362C22_nt3v36Ev();
+static  VTBL_ENTRY vtc_S15362C22_nt[] = {
+  0,
+  (VTBL_ENTRY)&(_ZTI12S15362C22_nt[0]),
+  (VTBL_ENTRY)&_ZN12S15362C22_ntD1Ev,
+  (VTBL_ENTRY)&_ZN12S15362C22_ntD0Ev,
+  (VTBL_ENTRY)&_ZN12S15362C22_nt3v32Ev,
+  (VTBL_ENTRY)&_ZN12S15362C22_nt3v33Ev,
+  (VTBL_ENTRY)&_ZN12S15362C22_nt3v34Ev,
+  (VTBL_ENTRY)&_ZN12S15362C22_nt3v35Ev,
+  (VTBL_ENTRY)&_ZN12S15362C22_nt3v36Ev,
+};
+extern VTBL_ENTRY _ZTI12S15362C22_nt[];
+VTBL_ENTRY *P__ZTI12S15362C22_nt = _ZTI12S15362C22_nt; 
+extern  VTBL_ENTRY _ZTV12S15362C22_nt[];
+Class_Descriptor cd_S15362C22_nt = {  "S15362C22_nt", // class name
+  0,0,//no base classes
+  &(vtc_S15362C22_nt[0]), // expected_vtbl_contents
+  0, //no vtt
+  ABISELECT(64,48), // object size
+  NSPAIRA(_ZTI12S15362C22_nt),ABISELECT(16,8), //typeinfo_var
+  NSPAIRA(_ZTV12S15362C22_nt),9, //virtual function table var
+  2, // offset into main vftv pointed to by object[0]
+  {0,0},0, // virtual table table var
+  0, // n_initialized_bases
+  0, // has_virtual_bases
+  0, // has_class_type_fields
+  0, // alt-thunk-names
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S15362C21  : S15362C22_nt {
+  virtual void  v29(); // _ZN9S15362C213v29Ev
+  virtual void  v30(); // _ZN9S15362C213v30Ev
+  virtual void  v31(); // _ZN9S15362C213v31Ev
+  ~S15362C21(); // tgen
+  S15362C21(); // tgen
+};
+//SIG(-1 S15362C21) C1{ BC2{ vd v4 v5 v6 v7 v8 Fi[8] Fp Fi Fp} v1 v2 v3}
+
+
+void  S15362C21 ::v29(){vfunc_called(this, "_ZN9S15362C213v29Ev");}
+void  S15362C21 ::v30(){vfunc_called(this, "_ZN9S15362C213v30Ev");}
+void  S15362C21 ::v31(){vfunc_called(this, "_ZN9S15362C213v31Ev");}
+S15362C21 ::~S15362C21(){ note_dtor("S15362C21", this);} // tgen
+S15362C21 ::S15362C21(){ note_ctor("S15362C21", this);} // tgen
+
+static void Test_S15362C21()
+{
+  extern Class_Descriptor cd_S15362C21;
+  void *lvp;
+  {
+    ABISELECT(double,int) buf[ABISELECT(9,13)];
+    init_test(&cd_S15362C21, buf);
+    S15362C21 *dp, &lv = *(dp=new (buf) S15362C21());
+    lvp = (void*)&lv;
+    check2(sizeof(lv), ABISELECT(64,48), "sizeof(S15362C21)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S15362C21)");
+    check_base_class_offset(lv, (S15362C22_nt*), 0, "S15362C21");
+    test_class_info(&lv, &cd_S15362C21);
+    dp->~S15362C21();
+  }
+  Check_Ctor_Dtor_Calls(lvp);
+}
+static Arrange_To_Call_Me vS15362C21(Test_S15362C21, "S15362C21", ABISELECT(64,48));
+
+#else // __cplusplus
+
+extern void _ZN9S15362C21C1Ev();
+extern void _ZN9S15362C21D1Ev();
+Name_Map name_map_S15362C21[] = {
+  NSPAIR(_ZN9S15362C21C1Ev),
+  NSPAIR(_ZN9S15362C21D1Ev),
+  {0,0}
+};
+extern Class_Descriptor cd_S15362C22_nt;
+extern VTBL_ENTRY _ZTI12S15362C22_nt[];
+extern  VTBL_ENTRY _ZTV12S15362C22_nt[];
+static Base_Class bases_S15362C21[] = {
+  // ofst, vfto, nneg, vtt_idx, base_vtt_idx, init_seq, direct, virtual
+  {&cd_S15362C22_nt,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    1, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {0}};
+extern VTBL_ENTRY _ZTI9S15362C21[];
+extern void _ZN9S15362C21D1Ev();
+extern void _ZN9S15362C21D0Ev();
+extern void _ZN12S15362C22_nt3v32Ev();
+extern void _ZN12S15362C22_nt3v33Ev();
+extern void _ZN12S15362C22_nt3v34Ev();
+extern void _ZN12S15362C22_nt3v35Ev();
+extern void _ZN12S15362C22_nt3v36Ev();
+extern void _ZN9S15362C213v29Ev();
+extern void _ZN9S15362C213v30Ev();
+extern void _ZN9S15362C213v31Ev();
+static  VTBL_ENTRY vtc_S15362C21[] = {
+  0,
+  (VTBL_ENTRY)&(_ZTI9S15362C21[0]),
+  (VTBL_ENTRY)&_ZN9S15362C21D1Ev,
+  (VTBL_ENTRY)&_ZN9S15362C21D0Ev,
+  (VTBL_ENTRY)&_ZN12S15362C22_nt3v32Ev,
+  (VTBL_ENTRY)&_ZN12S15362C22_nt3v33Ev,
+  (VTBL_ENTRY)&_ZN12S15362C22_nt3v34Ev,
+  (VTBL_ENTRY)&_ZN12S15362C22_nt3v35Ev,
+  (VTBL_ENTRY)&_ZN12S15362C22_nt3v36Ev,
+  (VTBL_ENTRY)&_ZN9S15362C213v29Ev,
+  (VTBL_ENTRY)&_ZN9S15362C213v30Ev,
+  (VTBL_ENTRY)&_ZN9S15362C213v31Ev,
+};
+extern VTBL_ENTRY _ZTI9S15362C21[];
+extern  VTBL_ENTRY _ZTV9S15362C21[];
+Class_Descriptor cd_S15362C21 = {  "S15362C21", // class name
+  bases_S15362C21, 1,
+  &(vtc_S15362C21[0]), // expected_vtbl_contents
+  0, //no vtt
+  ABISELECT(64,48), // object size
+  NSPAIRA(_ZTI9S15362C21),ABISELECT(24,12), //typeinfo_var
+  NSPAIRA(_ZTV9S15362C21),12, //virtual function table var
+  2, // offset into main vftv pointed to by object[0]
+  {0,0},0, // virtual table table var
+  1, // n_initialized_bases
+  0, // has_virtual_bases
+  0, // has_class_type_fields
+  0, // alt-thunk-names
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S15362C1  {
+  ::S15362C2 s15362c1f0;
+  ::S15362C7 s15362c1f1;
+  ::S15362C8 s15362c1f2;
+  int s15362c1f3;
+  ::S15362C9 s15362c1f4;
+  ::S17824C32 s15362c1f5;
+  ::S6645C47 s15362c1f6;
+  ::S6645C42_nt s15362c1f7;
+  ::S6491C23 s15362c1f8;
+  ::S15362C21 s15362c1f9;
+  ::S10035C7 s15362c1f10;
+  ::S6491C38 s15362c1f11;
+  void  mf15362c1(); // _ZN8S15362C19mf15362c1Ev
+};
+//SIG(1 S15362C1) C1{ m FC2{ BC3{ BC4{ vd v3 v4 v5 v6 v7 v8 v9 FC5{ m Fp[3]} Fi:1} vd v10 v11 FC6{ m Fp}} vd v1 v2 Fp Fi Fp Fi[3]} FC7{ BC3 vd v12 v13 Fp[2] Fi[2]} FC8{ BC3 vd v14 Fp[2] Fi[2]} Fi FC9{ BC10{ BC4 vd v16 v17 FC11{ m Fp}} v15 FC12{ BC13{ BC14{ m Fp Fi[2]}} BC15{ v23 v24 v25 v26 v27} v18 v19 v20 v21 v22 Fi}} FC16{ BC17{ BC18{ vd v29 v30 v31 v32 v33 v34 v35 FC5 Fi:1} vd v36 v37 FC6} v28 FC19{ BC14}} FC20{ BC14} FC21{ BC14} FC13 FC22{ BC23{ vd v41 v42 v43 v44 v45 Fi[8] Fp Fi Fp} v38 v39 v40} FC24{ BC25{ BC26{ vd v48 v49 v50 v51 v52 v53 v54 FC5 Fi:1} v55 v56 v57 FC27{ m FC28{ Fp Fi[2]}[16] Fi} FC27 FC6 FC6 FC6 FC6 FC6 FC29{ m FC30{ Fc[3] Fi} Fi[2]}} v46 v47 FC31{ BC29 FC32{ m Fp Fc[3] Fi} FC32[2] FC33{ m FC32[4] Fi} FC32 FC32}} FC34{ BC35{ BC36{ vd v60 v61 v62 v63 v64 v65 v66 FC5 Fi:1} v67 v68 v69 FC27 FC27 FC37{ m Fp} FC37 FC37 FC37 FC37 FC29} v58 v59 FC38{ m FC32 FC32 Fi}}}
+
+
+void  S15362C1 ::mf15362c1(){}
+
+static void Test_S15362C1()
+{
+  {
+    init_simple_test("S15362C1");
+    static S15362C1 lv;
+    check2(sizeof(lv), ABISELECT(1952,1348), "sizeof(S15362C1)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S15362C1)");
+    check_field_offset(lv, s15362c1f0, 0, "S15362C1.s15362c1f0");
+    check_field_offset(lv, s15362c1f1, ABISELECT(88,48), "S15362C1.s15362c1f1");
+    check_field_offset(lv, s15362c1f2, ABISELECT(160,88), "S15362C1.s15362c1f2");
+    check_field_offset(lv, s15362c1f3, ABISELECT(232,128), "S15362C1.s15362c1f3");
+    check_field_offset(lv, s15362c1f4, ABISELECT(240,132), "S15362C1.s15362c1f4");
+    check_field_offset(lv, s15362c1f5, ABISELECT(320,176), "S15362C1.s15362c1f5");
+    check_field_offset(lv, s15362c1f6, ABISELECT(384,212), "S15362C1.s15362c1f6");
+    check_field_offset(lv, s15362c1f7, ABISELECT(400,224), "S15362C1.s15362c1f7");
+    check_field_offset(lv, s15362c1f8, ABISELECT(416,236), "S15362C1.s15362c1f8");
+    check_field_offset(lv, s15362c1f9, ABISELECT(432,248), "S15362C1.s15362c1f9");
+    check_field_offset(lv, s15362c1f10, ABISELECT(496,296), "S15362C1.s15362c1f10");
+    check_field_offset(lv, s15362c1f11, ABISELECT(1288,872), "S15362C1.s15362c1f11");
+  }
+}
+static Arrange_To_Call_Me vS15362C1(Test_S15362C1, "S15362C1", ABISELECT(1952,1348));
+
+#else // __cplusplus
+
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S3583C4_nt  {
+  void  mf3583c4(); // _ZN10S3583C4_nt8mf3583c4Ev
+  virtual  ~S3583C4_nt(); // _ZN10S3583C4_ntD1Ev
+  S3583C4_nt(); // tgen
+};
+//SIG(-1 S3583C4_nt) C1{ vd m}
+
+
+void  S3583C4_nt ::mf3583c4(){}
+ S3583C4_nt ::~S3583C4_nt(){ note_dtor("S3583C4_nt", this);}
+S3583C4_nt ::S3583C4_nt(){ note_ctor("S3583C4_nt", this);} // tgen
+
+//skip512 S3583C4_nt
+
+#else // __cplusplus
+
+extern void _ZN10S3583C4_ntC1Ev();
+extern void _ZN10S3583C4_ntD1Ev();
+Name_Map name_map_S3583C4_nt[] = {
+  NSPAIR(_ZN10S3583C4_ntC1Ev),
+  NSPAIR(_ZN10S3583C4_ntD1Ev),
+  {0,0}
+};
+extern VTBL_ENTRY _ZTI10S3583C4_nt[];
+extern void _ZN10S3583C4_ntD1Ev();
+extern void _ZN10S3583C4_ntD0Ev();
+static  VTBL_ENTRY vtc_S3583C4_nt[] = {
+  0,
+  (VTBL_ENTRY)&(_ZTI10S3583C4_nt[0]),
+  (VTBL_ENTRY)&_ZN10S3583C4_ntD1Ev,
+  (VTBL_ENTRY)&_ZN10S3583C4_ntD0Ev,
+};
+extern VTBL_ENTRY _ZTI10S3583C4_nt[];
+VTBL_ENTRY *P__ZTI10S3583C4_nt = _ZTI10S3583C4_nt; 
+extern  VTBL_ENTRY _ZTV10S3583C4_nt[];
+Class_Descriptor cd_S3583C4_nt = {  "S3583C4_nt", // class name
+  0,0,//no base classes
+  &(vtc_S3583C4_nt[0]), // expected_vtbl_contents
+  0, //no vtt
+  ABISELECT(8,4), // object size
+  NSPAIRA(_ZTI10S3583C4_nt),ABISELECT(16,8), //typeinfo_var
+  NSPAIRA(_ZTV10S3583C4_nt),4, //virtual function table var
+  2, // offset into main vftv pointed to by object[0]
+  {0,0},0, // virtual table table var
+  0, // n_initialized_bases
+  0, // has_virtual_bases
+  0, // has_class_type_fields
+  0, // alt-thunk-names
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S3583C6_nt  {
+  int s3583c6f0;
+  void  mf3583c6(); // _ZN10S3583C6_nt8mf3583c6Ev
+  virtual  ~S3583C6_nt(); // _ZN10S3583C6_ntD1Ev
+  S3583C6_nt(); // tgen
+};
+//SIG(-1 S3583C6_nt) C1{ vd m Fi}
+
+
+void  S3583C6_nt ::mf3583c6(){}
+ S3583C6_nt ::~S3583C6_nt(){ note_dtor("S3583C6_nt", this);}
+S3583C6_nt ::S3583C6_nt(){ note_ctor("S3583C6_nt", this);} // tgen
+
+//skip512 S3583C6_nt
+
+#else // __cplusplus
+
+extern void _ZN10S3583C6_ntC1Ev();
+extern void _ZN10S3583C6_ntD1Ev();
+Name_Map name_map_S3583C6_nt[] = {
+  NSPAIR(_ZN10S3583C6_ntC1Ev),
+  NSPAIR(_ZN10S3583C6_ntD1Ev),
+  {0,0}
+};
+extern VTBL_ENTRY _ZTI10S3583C6_nt[];
+extern void _ZN10S3583C6_ntD1Ev();
+extern void _ZN10S3583C6_ntD0Ev();
+static  VTBL_ENTRY vtc_S3583C6_nt[] = {
+  0,
+  (VTBL_ENTRY)&(_ZTI10S3583C6_nt[0]),
+  (VTBL_ENTRY)&_ZN10S3583C6_ntD1Ev,
+  (VTBL_ENTRY)&_ZN10S3583C6_ntD0Ev,
+};
+extern VTBL_ENTRY _ZTI10S3583C6_nt[];
+VTBL_ENTRY *P__ZTI10S3583C6_nt = _ZTI10S3583C6_nt; 
+extern  VTBL_ENTRY _ZTV10S3583C6_nt[];
+Class_Descriptor cd_S3583C6_nt = {  "S3583C6_nt", // class name
+  0,0,//no base classes
+  &(vtc_S3583C6_nt[0]), // expected_vtbl_contents
+  0, //no vtt
+  ABISELECT(16,8), // object size
+  NSPAIRA(_ZTI10S3583C6_nt),ABISELECT(16,8), //typeinfo_var
+  NSPAIRA(_ZTV10S3583C6_nt),4, //virtual function table var
+  2, // offset into main vftv pointed to by object[0]
+  {0,0},0, // virtual table table var
+  0, // n_initialized_bases
+  0, // has_virtual_bases
+  0, // has_class_type_fields
+  0, // alt-thunk-names
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S3583C7  {
+  void  mf3583c7(); // _ZN7S3583C78mf3583c7Ev
+  virtual  ~S3583C7(); // _ZN7S3583C7D1Ev
+  S3583C7(); // tgen
+};
+//SIG(-1 S3583C7) C1{ vd m}
+
+
+void  S3583C7 ::mf3583c7(){}
+ S3583C7 ::~S3583C7(){ note_dtor("S3583C7", this);}
+S3583C7 ::S3583C7(){ note_ctor("S3583C7", this);} // tgen
+
+static void Test_S3583C7()
+{
+  extern Class_Descriptor cd_S3583C7;
+  void *lvp;
+  {
+    ABISELECT(double,int) buf[2];
+    init_test(&cd_S3583C7, buf);
+    S3583C7 *dp, &lv = *(dp=new (buf) S3583C7());
+    lvp = (void*)&lv;
+    check2(sizeof(lv), ABISELECT(8,4), "sizeof(S3583C7)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S3583C7)");
+    test_class_info(&lv, &cd_S3583C7);
+    dp->~S3583C7();
+  }
+  Check_Ctor_Dtor_Calls(lvp);
+}
+static Arrange_To_Call_Me vS3583C7(Test_S3583C7, "S3583C7", ABISELECT(8,4));
+
+#else // __cplusplus
+
+extern void _ZN7S3583C7C1Ev();
+extern void _ZN7S3583C7D1Ev();
+Name_Map name_map_S3583C7[] = {
+  NSPAIR(_ZN7S3583C7C1Ev),
+  NSPAIR(_ZN7S3583C7D1Ev),
+  {0,0}
+};
+extern VTBL_ENTRY _ZTI7S3583C7[];
+extern void _ZN7S3583C7D1Ev();
+extern void _ZN7S3583C7D0Ev();
+static  VTBL_ENTRY vtc_S3583C7[] = {
+  0,
+  (VTBL_ENTRY)&(_ZTI7S3583C7[0]),
+  (VTBL_ENTRY)&_ZN7S3583C7D1Ev,
+  (VTBL_ENTRY)&_ZN7S3583C7D0Ev,
+};
+extern VTBL_ENTRY _ZTI7S3583C7[];
+extern  VTBL_ENTRY _ZTV7S3583C7[];
+Class_Descriptor cd_S3583C7 = {  "S3583C7", // class name
+  0,0,//no base classes
+  &(vtc_S3583C7[0]), // expected_vtbl_contents
+  0, //no vtt
+  ABISELECT(8,4), // object size
+  NSPAIRA(_ZTI7S3583C7),ABISELECT(16,8), //typeinfo_var
+  NSPAIRA(_ZTV7S3583C7),4, //virtual function table var
+  2, // offset into main vftv pointed to by object[0]
+  {0,0},0, // virtual table table var
+  0, // n_initialized_bases
+  0, // has_virtual_bases
+  0, // has_class_type_fields
+  0, // alt-thunk-names
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S3583C5  : virtual S3583C6_nt , S3583C4_nt , virtual S3583C7 {
+  int s3583c5f0;
+  virtual  ~S3583C5(); // _ZN7S3583C5D2Ev
+  S3583C5(); // tgen
+};
+//SIG(-1 S3583C5) C1{ VBC2{ vd m Fi} BC3{ vd m} VBC4{ vd m} vd Fi}
+
+
+ S3583C5 ::~S3583C5(){ note_dtor("S3583C5", this);}
+S3583C5 ::S3583C5(){ note_ctor("S3583C5", this);} // tgen
+
+static void Test_S3583C5()
+{
+  extern Class_Descriptor cd_S3583C5;
+  void *lvp;
+  {
+    ABISELECT(double,int) buf[6];
+    init_test(&cd_S3583C5, buf);
+    S3583C5 *dp, &lv = *(dp=new (buf) S3583C5());
+    lvp = (void*)&lv;
+    check2(sizeof(lv), ABISELECT(40,20), "sizeof(S3583C5)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S3583C5)");
+    check_base_class_offset(lv, (S3583C6_nt*), ABISELECT(16,8), "S3583C5");
+    check_base_class_offset(lv, (S3583C4_nt*), 0, "S3583C5");
+    check_base_class_offset(lv, (S3583C7*), ABISELECT(32,16), "S3583C5");
+    check_field_offset(lv, s3583c5f0, ABISELECT(8,4), "S3583C5.s3583c5f0");
+    test_class_info(&lv, &cd_S3583C5);
+    dp->~S3583C5();
+  }
+  Check_Ctor_Dtor_Calls(lvp);
+}
+static Arrange_To_Call_Me vS3583C5(Test_S3583C5, "S3583C5", ABISELECT(40,20));
+
+#else // __cplusplus
+
+extern void _ZN7S3583C5C1Ev();
+extern void _ZN7S3583C5D2Ev();
+Name_Map name_map_S3583C5[] = {
+  NSPAIR(_ZN7S3583C5C1Ev),
+  NSPAIR(_ZN7S3583C5D2Ev),
+  {0,0}
+};
+extern Class_Descriptor cd_S3583C6_nt;
+extern VTBL_ENTRY _ZTI10S3583C6_nt[];
+extern  VTBL_ENTRY _ZTV10S3583C6_nt[];
+extern Class_Descriptor cd_S3583C4_nt;
+extern VTBL_ENTRY _ZTI10S3583C4_nt[];
+extern  VTBL_ENTRY _ZTV10S3583C4_nt[];
+extern Class_Descriptor cd_S3583C7;
+extern VTBL_ENTRY _ZTI7S3583C7[];
+extern  VTBL_ENTRY _ZTV7S3583C7[];
+static Base_Class bases_S3583C5[] = {
+  // ofst, vfto, nneg, vtt_idx, base_vtt_idx, init_seq, direct, virtual
+  {&cd_S3583C6_nt,    ABISELECT(16,8), //bcp->offset
+    6, //bcp->virtual_function_table_offset
+    3, //num_negative_vtable_entries(t, bcp)
+    2, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    1, //init_seq
+    -1, //immediately_derived
+  1, 1},
+  {&cd_S3583C4_nt,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    3, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {&cd_S3583C7,    ABISELECT(32,16), //bcp->offset
+    11, //bcp->virtual_function_table_offset
+    3, //num_negative_vtable_entries(t, bcp)
+    3, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    2, //init_seq
+    -1, //immediately_derived
+  1, 1},
+  {0}};
+extern VTBL_ENTRY _ZTI7S3583C5[];
+extern void _ZN7S3583C5D1Ev();
+extern void _ZN7S3583C5D0Ev();
+extern void ABISELECT(_ZTv0_n24_N7S3583C5D1Ev,_ZTv0_n12_N7S3583C5D1Ev)();
+extern void ABISELECT(_ZThn16_N7S3583C5D1Ev,_ZThn8_N7S3583C5D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N7S3583C5D0Ev,_ZTv0_n12_N7S3583C5D0Ev)();
+extern void ABISELECT(_ZThn16_N7S3583C5D0Ev,_ZThn8_N7S3583C5D0Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N7S3583C5D1Ev,_ZTv0_n12_N7S3583C5D1Ev)();
+extern void ABISELECT(_ZThn32_N7S3583C5D1Ev,_ZThn16_N7S3583C5D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N7S3583C5D0Ev,_ZTv0_n12_N7S3583C5D0Ev)();
+extern void ABISELECT(_ZThn32_N7S3583C5D0Ev,_ZThn16_N7S3583C5D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY vtc_S3583C5[] = {
+  ABISELECT(32,16),
+  ABISELECT(16,8),
+  0,
+  (VTBL_ENTRY)&(_ZTI7S3583C5[0]),
+  (VTBL_ENTRY)&_ZN7S3583C5D1Ev,
+  (VTBL_ENTRY)&_ZN7S3583C5D0Ev,
+  ABISELECT(-16,-8),
+  ABISELECT(-16,-8),
+  (VTBL_ENTRY)&(_ZTI7S3583C5[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C5D1Ev,_ZTv0_n12_N7S3583C5D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C5D0Ev,_ZTv0_n12_N7S3583C5D0Ev),
+  ABISELECT(-32,-16),
+  ABISELECT(-32,-16),
+  (VTBL_ENTRY)&(_ZTI7S3583C5[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C5D1Ev,_ZTv0_n12_N7S3583C5D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C5D0Ev,_ZTv0_n12_N7S3583C5D0Ev),
+};
+extern VTBL_ENTRY _ZTV7S3583C5[];
+static  VTT_ENTRY vtt_S3583C5[] = {
+  {&(_ZTV7S3583C5[4]),  4,16},
+  {&(_ZTV7S3583C5[9]),  9,16},
+  {&(_ZTV7S3583C5[14]),  14,16},
+};
+extern VTBL_ENTRY _ZTI7S3583C5[];
+extern  VTBL_ENTRY _ZTV7S3583C5[];
+extern  VTBL_ENTRY * __attribute__((weak))_ZTT7S3583C5[];
+static VTBL_ENTRY alt_thunk_names1[] = {
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n24_N7S3583C5D0Ev,_ZTv0_n12_N7S3583C5D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn32_N7S3583C5D0Ev,_ZThn16_N7S3583C5D0Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn16_N7S3583C5D0Ev,_ZThn8_N7S3583C5D0Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n24_N7S3583C5D1Ev,_ZTv0_n12_N7S3583C5D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn32_N7S3583C5D1Ev,_ZThn16_N7S3583C5D1Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn16_N7S3583C5D1Ev,_ZThn8_N7S3583C5D1Ev),
+  ALT_NAMES_TERMINATOR,
+ALT_NAMES_TERMINATOR};
+Class_Descriptor cd_S3583C5 = {  "S3583C5", // class name
+  bases_S3583C5, 3,
+  &(vtc_S3583C5[0]), // expected_vtbl_contents
+  &(vtt_S3583C5[0]), // expected_vtt_contents
+  ABISELECT(40,20), // object size
+  NSPAIRA(_ZTI7S3583C5),ABISELECT(72,40), //typeinfo_var
+  NSPAIRA(_ZTV7S3583C5),16, //virtual function table var
+  4, // offset into main vftv pointed to by object[0]
+  NSPAIRA(_ZTT7S3583C5),3, //virtual table table var
+  3, // n_initialized_bases
+  1, // has_virtual_bases
+  0, // has_class_type_fields
+  alt_thunk_names1,
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S3583C3  : virtual S3583C4_nt , S3583C5 {
+  void *s3583c3f0;
+  virtual  ~S3583C3(); // _ZN7S3583C3D2Ev
+  S3583C3(); // tgen
+};
+//SIG(-1 S3583C3) C1{ VBC2{ vd m} BC3{ VBC4{ vd m Fi} BC2 VBC5{ vd m} vd Fi} vd Fp}
+
+
+ S3583C3 ::~S3583C3(){ note_dtor("S3583C3", this);}
+S3583C3 ::S3583C3(){ note_ctor("S3583C3", this);} // tgen
+
+static void Test_S3583C3()
+{
+  extern Class_Descriptor cd_S3583C3;
+  void *lvp;
+  {
+    ABISELECT(double,int) buf[8];
+    init_test(&cd_S3583C3, buf);
+    S3583C3 *dp, &lv = *(dp=new (buf) S3583C3());
+    lvp = (void*)&lv;
+    check2(sizeof(lv), ABISELECT(56,28), "sizeof(S3583C3)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S3583C3)");
+    /*is_ambiguous_... S3583C3::S3583C4_nt */ AMB_check_base_class_offset(lv, (S3583C4_nt*), ABISELECT(24,12), "S3583C3");
+    check_base_class_offset(lv, (S3583C6_nt*)(S3583C5*), ABISELECT(32,16), "S3583C3");
+    check_base_class_offset(lv, (S3583C4_nt*)(S3583C5*), 0, "S3583C3");
+    check_base_class_offset(lv, (S3583C7*)(S3583C5*), ABISELECT(48,24), "S3583C3");
+    check_base_class_offset(lv, (S3583C5*), 0, "S3583C3");
+    check_field_offset(lv, s3583c3f0, ABISELECT(16,8), "S3583C3.s3583c3f0");
+    test_class_info(&lv, &cd_S3583C3);
+    dp->~S3583C3();
+  }
+  Check_Ctor_Dtor_Calls(lvp);
+}
+static Arrange_To_Call_Me vS3583C3(Test_S3583C3, "S3583C3", ABISELECT(56,28));
+
+#else // __cplusplus
+
+extern void _ZN7S3583C3C1Ev();
+extern void _ZN7S3583C3D2Ev();
+Name_Map name_map_S3583C3[] = {
+  NSPAIR(_ZN7S3583C3C1Ev),
+  NSPAIR(_ZN7S3583C3D2Ev),
+  {0,0}
+};
+extern Class_Descriptor cd_S3583C4_nt;
+extern VTBL_ENTRY _ZTI10S3583C4_nt[];
+extern  VTBL_ENTRY _ZTV10S3583C4_nt[];
+extern Class_Descriptor cd_S3583C6_nt;
+extern VTBL_ENTRY _ZTI10S3583C6_nt[];
+extern  VTBL_ENTRY _ZTV10S3583C6_nt[];
+extern Class_Descriptor cd_S3583C4_nt;
+extern VTBL_ENTRY _ZTI10S3583C4_nt[];
+extern  VTBL_ENTRY _ZTV10S3583C4_nt[];
+extern Class_Descriptor cd_S3583C7;
+extern VTBL_ENTRY _ZTI7S3583C7[];
+extern  VTBL_ENTRY _ZTV7S3583C7[];
+extern Class_Descriptor cd_S3583C5;
+extern VTBL_ENTRY _ZTI7S3583C5[];
+extern  VTBL_ENTRY _ZTV7S3583C5[];
+extern  VTBL_ENTRY * __attribute__((weak))_ZTT7S3583C5[];
+static Base_Class bases_S3583C3[] = {
+  // ofst, vfto, nneg, vtt_idx, base_vtt_idx, init_seq, direct, virtual
+  {&cd_S3583C4_nt,    ABISELECT(24,12), //bcp->offset
+    7, //bcp->virtual_function_table_offset
+    3, //num_negative_vtable_entries(t, bcp)
+    5, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    1, //init_seq
+    -1, //immediately_derived
+  1, 1},
+  {&cd_S3583C6_nt,    ABISELECT(32,16), //bcp->offset
+    12, //bcp->virtual_function_table_offset
+    3, //num_negative_vtable_entries(t, bcp)
+    6, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    2, //init_seq
+    4, //immediately_derived
+  0, 1},
+  {&cd_S3583C4_nt,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    4, //init_seq
+    4, //immediately_derived
+  0, 0},
+  {&cd_S3583C7,    ABISELECT(48,24), //bcp->offset
+    17, //bcp->virtual_function_table_offset
+    3, //num_negative_vtable_entries(t, bcp)
+    7, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    3, //init_seq
+    4, //immediately_derived
+  0, 1},
+  {&cd_S3583C5,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    4, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    2, //bcp->base_subarray_index_in_construction_vtbl_array
+    5, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {0}};
+extern VTBL_ENTRY _ZTI7S3583C3[];
+extern void _ZN7S3583C3D1Ev();
+extern void _ZN7S3583C3D0Ev();
+extern void ABISELECT(_ZTv0_n24_N7S3583C3D1Ev,_ZTv0_n12_N7S3583C3D1Ev)();
+extern void ABISELECT(_ZThn24_N7S3583C3D1Ev,_ZThn12_N7S3583C3D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N7S3583C3D0Ev,_ZTv0_n12_N7S3583C3D0Ev)();
+extern void ABISELECT(_ZThn24_N7S3583C3D0Ev,_ZThn12_N7S3583C3D0Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N7S3583C3D1Ev,_ZTv0_n12_N7S3583C3D1Ev)();
+extern void ABISELECT(_ZThn32_N7S3583C3D1Ev,_ZThn16_N7S3583C3D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N7S3583C3D0Ev,_ZTv0_n12_N7S3583C3D0Ev)();
+extern void ABISELECT(_ZThn32_N7S3583C3D0Ev,_ZThn16_N7S3583C3D0Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N7S3583C3D1Ev,_ZTv0_n12_N7S3583C3D1Ev)();
+extern void ABISELECT(_ZThn48_N7S3583C3D1Ev,_ZThn24_N7S3583C3D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N7S3583C3D0Ev,_ZTv0_n12_N7S3583C3D0Ev)();
+extern void ABISELECT(_ZThn48_N7S3583C3D0Ev,_ZThn24_N7S3583C3D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY vtc_S3583C3[] = {
+  ABISELECT(24,12),
+  ABISELECT(48,24),
+  ABISELECT(32,16),
+  0,
+  (VTBL_ENTRY)&(_ZTI7S3583C3[0]),
+  (VTBL_ENTRY)&_ZN7S3583C3D1Ev,
+  (VTBL_ENTRY)&_ZN7S3583C3D0Ev,
+  ABISELECT(-24,-12),
+  ABISELECT(-24,-12),
+  (VTBL_ENTRY)&(_ZTI7S3583C3[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C3D1Ev,_ZTv0_n12_N7S3583C3D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C3D0Ev,_ZTv0_n12_N7S3583C3D0Ev),
+  ABISELECT(-32,-16),
+  ABISELECT(-32,-16),
+  (VTBL_ENTRY)&(_ZTI7S3583C3[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C3D1Ev,_ZTv0_n12_N7S3583C3D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C3D0Ev,_ZTv0_n12_N7S3583C3D0Ev),
+  ABISELECT(-48,-24),
+  ABISELECT(-48,-24),
+  (VTBL_ENTRY)&(_ZTI7S3583C3[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C3D1Ev,_ZTv0_n12_N7S3583C3D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C3D0Ev,_ZTv0_n12_N7S3583C3D0Ev),
+};
+extern VTBL_ENTRY _ZTV7S3583C3[];
+extern void _ZN7S3583C5D1Ev();
+extern void _ZN7S3583C5D0Ev();
+static  VTBL_ENTRY _tg__ZTV7S3583C5__7S3583C3[] = {
+  ABISELECT(48,24),
+  ABISELECT(32,16),
+  0,
+  (VTBL_ENTRY)&(_ZTI7S3583C5[0]),
+  (VTBL_ENTRY)&_ZN7S3583C5D1Ev,
+  (VTBL_ENTRY)&_ZN7S3583C5D0Ev,
+};
+extern void ABISELECT(_ZTv0_n24_N7S3583C5D1Ev,_ZTv0_n12_N7S3583C5D1Ev)();
+extern void ABISELECT(_ZThn32_N7S3583C5D1Ev,_ZThn16_N7S3583C5D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N7S3583C5D0Ev,_ZTv0_n12_N7S3583C5D0Ev)();
+extern void ABISELECT(_ZThn32_N7S3583C5D0Ev,_ZThn16_N7S3583C5D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV10S3583C6_nt__7S3583C5__7S3583C3[] = {
+  ABISELECT(-32,-16),
+  ABISELECT(-32,-16),
+  (VTBL_ENTRY)&(_ZTI7S3583C5[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C5D1Ev,_ZTv0_n12_N7S3583C5D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C5D0Ev,_ZTv0_n12_N7S3583C5D0Ev),
+};
+extern void ABISELECT(_ZTv0_n24_N7S3583C5D1Ev,_ZTv0_n12_N7S3583C5D1Ev)();
+extern void ABISELECT(_ZThn48_N7S3583C5D1Ev,_ZThn24_N7S3583C5D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N7S3583C5D0Ev,_ZTv0_n12_N7S3583C5D0Ev)();
+extern void ABISELECT(_ZThn48_N7S3583C5D0Ev,_ZThn24_N7S3583C5D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV7S3583C7__7S3583C5__7S3583C3[] = {
+  ABISELECT(-48,-24),
+  ABISELECT(-48,-24),
+  (VTBL_ENTRY)&(_ZTI7S3583C5[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C5D1Ev,_ZTv0_n12_N7S3583C5D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C5D0Ev,_ZTv0_n12_N7S3583C5D0Ev),
+};
+static  VTT_ENTRY vtt_S3583C3[] = {
+  {&(_ZTV7S3583C3[5]),  5,22},
+  {&(_tg__ZTV7S3583C5__7S3583C3[4]),  4,6},
+  {&(_tg__ZTV10S3583C6_nt__7S3583C5__7S3583C3[3]),  3,5},
+  {&(_tg__ZTV7S3583C7__7S3583C5__7S3583C3[3]),  3,5},
+  {&(_ZTV7S3583C3[10]),  10,22},
+  {&(_ZTV7S3583C3[15]),  15,22},
+  {&(_ZTV7S3583C3[20]),  20,22},
+};
+extern VTBL_ENTRY _ZTI7S3583C3[];
+extern  VTBL_ENTRY _ZTV7S3583C3[];
+extern  VTBL_ENTRY * __attribute__((weak))_ZTT7S3583C3[];
+static VTBL_ENTRY alt_thunk_names2[] = {
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n24_N7S3583C5D0Ev,_ZTv0_n12_N7S3583C5D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn48_N7S3583C5D0Ev,_ZThn24_N7S3583C5D0Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn32_N7S3583C5D0Ev,_ZThn16_N7S3583C5D0Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n24_N7S3583C5D1Ev,_ZTv0_n12_N7S3583C5D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn48_N7S3583C5D1Ev,_ZThn24_N7S3583C5D1Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn32_N7S3583C5D1Ev,_ZThn16_N7S3583C5D1Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n24_N7S3583C3D0Ev,_ZTv0_n12_N7S3583C3D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn48_N7S3583C3D0Ev,_ZThn24_N7S3583C3D0Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn32_N7S3583C3D0Ev,_ZThn16_N7S3583C3D0Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn24_N7S3583C3D0Ev,_ZThn12_N7S3583C3D0Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n24_N7S3583C3D1Ev,_ZTv0_n12_N7S3583C3D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn48_N7S3583C3D1Ev,_ZThn24_N7S3583C3D1Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn32_N7S3583C3D1Ev,_ZThn16_N7S3583C3D1Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn24_N7S3583C3D1Ev,_ZThn12_N7S3583C3D1Ev),
+  ALT_NAMES_TERMINATOR,
+ALT_NAMES_TERMINATOR};
+Class_Descriptor cd_S3583C3 = {  "S3583C3", // class name
+  bases_S3583C3, 5,
+  &(vtc_S3583C3[0]), // expected_vtbl_contents
+  &(vtt_S3583C3[0]), // expected_vtt_contents
+  ABISELECT(56,28), // object size
+  NSPAIRA(_ZTI7S3583C3),ABISELECT(56,32), //typeinfo_var
+  NSPAIRA(_ZTV7S3583C3),22, //virtual function table var
+  5, // offset into main vftv pointed to by object[0]
+  NSPAIRA(_ZTT7S3583C3),7, //virtual table table var
+  5, // n_initialized_bases
+  1, // has_virtual_bases
+  0, // has_class_type_fields
+  alt_thunk_names2,
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S3583C10  : S3583C4_nt , virtual S3583C6_nt , S3583C7 {
+  virtual  ~S3583C10(); // _ZN8S3583C10D2Ev
+  S3583C10(); // tgen
+};
+//SIG(-1 S3583C10) C1{ BC2{ vd m} VBC3{ vd m Fi} BC4{ vd m} vd}
+
+
+ S3583C10 ::~S3583C10(){ note_dtor("S3583C10", this);}
+S3583C10 ::S3583C10(){ note_ctor("S3583C10", this);} // tgen
+
+static void Test_S3583C10()
+{
+  extern Class_Descriptor cd_S3583C10;
+  void *lvp;
+  {
+    ABISELECT(double,int) buf[5];
+    init_test(&cd_S3583C10, buf);
+    S3583C10 *dp, &lv = *(dp=new (buf) S3583C10());
+    lvp = (void*)&lv;
+    check2(sizeof(lv), ABISELECT(32,16), "sizeof(S3583C10)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S3583C10)");
+    check_base_class_offset(lv, (S3583C4_nt*), 0, "S3583C10");
+    check_base_class_offset(lv, (S3583C6_nt*), ABISELECT(16,8), "S3583C10");
+    check_base_class_offset(lv, (S3583C7*), ABISELECT(8,4), "S3583C10");
+    test_class_info(&lv, &cd_S3583C10);
+    dp->~S3583C10();
+  }
+  Check_Ctor_Dtor_Calls(lvp);
+}
+static Arrange_To_Call_Me vS3583C10(Test_S3583C10, "S3583C10", ABISELECT(32,16));
+
+#else // __cplusplus
+
+extern void _ZN8S3583C10C1Ev();
+extern void _ZN8S3583C10D2Ev();
+Name_Map name_map_S3583C10[] = {
+  NSPAIR(_ZN8S3583C10C1Ev),
+  NSPAIR(_ZN8S3583C10D2Ev),
+  {0,0}
+};
+extern Class_Descriptor cd_S3583C4_nt;
+extern VTBL_ENTRY _ZTI10S3583C4_nt[];
+extern  VTBL_ENTRY _ZTV10S3583C4_nt[];
+extern Class_Descriptor cd_S3583C6_nt;
+extern VTBL_ENTRY _ZTI10S3583C6_nt[];
+extern  VTBL_ENTRY _ZTV10S3583C6_nt[];
+extern Class_Descriptor cd_S3583C7;
+extern VTBL_ENTRY _ZTI7S3583C7[];
+extern  VTBL_ENTRY _ZTV7S3583C7[];
+static Base_Class bases_S3583C10[] = {
+  // ofst, vfto, nneg, vtt_idx, base_vtt_idx, init_seq, direct, virtual
+  {&cd_S3583C4_nt,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    2, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {&cd_S3583C6_nt,    ABISELECT(16,8), //bcp->offset
+    9, //bcp->virtual_function_table_offset
+    3, //num_negative_vtable_entries(t, bcp)
+    2, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    1, //init_seq
+    -1, //immediately_derived
+  1, 1},
+  {&cd_S3583C7,    ABISELECT(8,4), //bcp->offset
+    5, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    3, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {0}};
+extern VTBL_ENTRY _ZTI8S3583C10[];
+extern void _ZN8S3583C10D1Ev();
+extern void _ZN8S3583C10D0Ev();
+extern void ABISELECT(_ZThn8_N8S3583C10D1Ev,_ZThn4_N8S3583C10D1Ev)();
+extern void ABISELECT(_ZThn8_N8S3583C10D0Ev,_ZThn4_N8S3583C10D0Ev)();
+extern void ABISELECT(_ZTv0_n24_N8S3583C10D1Ev,_ZTv0_n12_N8S3583C10D1Ev)();
+extern void ABISELECT(_ZThn16_N8S3583C10D1Ev,_ZThn8_N8S3583C10D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N8S3583C10D0Ev,_ZTv0_n12_N8S3583C10D0Ev)();
+extern void ABISELECT(_ZThn16_N8S3583C10D0Ev,_ZThn8_N8S3583C10D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY vtc_S3583C10[] = {
+  ABISELECT(16,8),
+  0,
+  (VTBL_ENTRY)&(_ZTI8S3583C10[0]),
+  (VTBL_ENTRY)&_ZN8S3583C10D1Ev,
+  (VTBL_ENTRY)&_ZN8S3583C10D0Ev,
+  ABISELECT(-8,-4),
+  (VTBL_ENTRY)&(_ZTI8S3583C10[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZThn8_N8S3583C10D1Ev,_ZThn4_N8S3583C10D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZThn8_N8S3583C10D0Ev,_ZThn4_N8S3583C10D0Ev),
+  ABISELECT(-16,-8),
+  ABISELECT(-16,-8),
+  (VTBL_ENTRY)&(_ZTI8S3583C10[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C10D1Ev,_ZTv0_n12_N8S3583C10D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C10D0Ev,_ZTv0_n12_N8S3583C10D0Ev),
+};
+extern VTBL_ENTRY _ZTV8S3583C10[];
+static  VTT_ENTRY vtt_S3583C10[] = {
+  {&(_ZTV8S3583C10[3]),  3,14},
+  {&(_ZTV8S3583C10[12]),  12,14},
+};
+extern VTBL_ENTRY _ZTI8S3583C10[];
+extern  VTBL_ENTRY _ZTV8S3583C10[];
+extern  VTBL_ENTRY * __attribute__((weak))_ZTT8S3583C10[];
+static VTBL_ENTRY alt_thunk_names3[] = {
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n24_N8S3583C10D0Ev,_ZTv0_n12_N8S3583C10D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn16_N8S3583C10D0Ev,_ZThn8_N8S3583C10D0Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n24_N8S3583C10D1Ev,_ZTv0_n12_N8S3583C10D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn16_N8S3583C10D1Ev,_ZThn8_N8S3583C10D1Ev),
+  ALT_NAMES_TERMINATOR,
+ALT_NAMES_TERMINATOR};
+Class_Descriptor cd_S3583C10 = {  "S3583C10", // class name
+  bases_S3583C10, 3,
+  &(vtc_S3583C10[0]), // expected_vtbl_contents
+  &(vtt_S3583C10[0]), // expected_vtt_contents
+  ABISELECT(32,16), // object size
+  NSPAIRA(_ZTI8S3583C10),ABISELECT(72,40), //typeinfo_var
+  NSPAIRA(_ZTV8S3583C10),14, //virtual function table var
+  3, // offset into main vftv pointed to by object[0]
+  NSPAIRA(_ZTT8S3583C10),2, //virtual table table var
+  3, // n_initialized_bases
+  1, // has_virtual_bases
+  0, // has_class_type_fields
+  alt_thunk_names3,
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S3583C9  : virtual S3583C4_nt , S3583C7 , S3583C6_nt , virtual S3583C5 , virtual S3583C10 {
+  void *s3583c9f0;
+  virtual  ~S3583C9(); // _ZN7S3583C9D2Ev
+  S3583C9(); // tgen
+};
+//SIG(-1 S3583C9) C1{ VBC2{ vd m} BC3{ vd m} BC4{ vd m Fi} VBC5{ VBC4 BC2 VBC3 vd Fi} VBC6{ BC2 VBC4 BC3 vd} vd Fp}
+
+
+ S3583C9 ::~S3583C9(){ note_dtor("S3583C9", this);}
+S3583C9 ::S3583C9(){ note_ctor("S3583C9", this);} // tgen
+
+static void Test_S3583C9()
+{
+  extern Class_Descriptor cd_S3583C9;
+  void *lvp;
+  {
+    ABISELECT(double,int) buf[13];
+    init_test(&cd_S3583C9, buf);
+    S3583C9 *dp, &lv = *(dp=new (buf) S3583C9());
+    lvp = (void*)&lv;
+    check2(sizeof(lv), ABISELECT(96,48), "sizeof(S3583C9)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S3583C9)");
+    /*is_ambiguous_... S3583C9::S3583C4_nt */ AMB_check_base_class_offset(lv, (S3583C4_nt*), ABISELECT(32,16), "S3583C9");
+    /*is_ambiguous_... S3583C9::S3583C7 */ AMB_check_base_class_offset(lv, (S3583C7*), 0, "S3583C9");
+    /*is_ambiguous_... S3583C9::S3583C6_nt */ AMB_check_base_class_offset(lv, (S3583C6_nt*), ABISELECT(8,4), "S3583C9");
+    check_base_class_offset(lv, (S3583C6_nt*)(S3583C5*), ABISELECT(56,28), "S3583C9");
+    check_base_class_offset(lv, (S3583C6_nt*)(S3583C10*), ABISELECT(56,28), "S3583C9");
+    check_base_class_offset(lv, (S3583C4_nt*)(S3583C5*), ABISELECT(40,20), "S3583C9");
+    check_base_class_offset(lv, (S3583C7*)(S3583C5*), ABISELECT(72,36), "S3583C9");
+    check_base_class_offset(lv, (S3583C5*), ABISELECT(40,20), "S3583C9");
+    check_base_class_offset(lv, (S3583C4_nt*)(S3583C10*), ABISELECT(80,40), "S3583C9");
+    check_base_class_offset(lv, (S3583C7*)(S3583C10*), ABISELECT(88,44), "S3583C9");
+    check_base_class_offset(lv, (S3583C10*), ABISELECT(80,40), "S3583C9");
+    check_field_offset(lv, s3583c9f0, ABISELECT(24,12), "S3583C9.s3583c9f0");
+    test_class_info(&lv, &cd_S3583C9);
+    dp->~S3583C9();
+  }
+  Check_Ctor_Dtor_Calls(lvp);
+}
+static Arrange_To_Call_Me vS3583C9(Test_S3583C9, "S3583C9", ABISELECT(96,48));
+
+#else // __cplusplus
+
+extern void _ZN7S3583C9C1Ev();
+extern void _ZN7S3583C9D2Ev();
+Name_Map name_map_S3583C9[] = {
+  NSPAIR(_ZN7S3583C9C1Ev),
+  NSPAIR(_ZN7S3583C9D2Ev),
+  {0,0}
+};
+extern Class_Descriptor cd_S3583C4_nt;
+extern VTBL_ENTRY _ZTI10S3583C4_nt[];
+extern  VTBL_ENTRY _ZTV10S3583C4_nt[];
+extern Class_Descriptor cd_S3583C7;
+extern VTBL_ENTRY _ZTI7S3583C7[];
+extern  VTBL_ENTRY _ZTV7S3583C7[];
+extern Class_Descriptor cd_S3583C6_nt;
+extern VTBL_ENTRY _ZTI10S3583C6_nt[];
+extern  VTBL_ENTRY _ZTV10S3583C6_nt[];
+extern Class_Descriptor cd_S3583C6_nt;
+extern VTBL_ENTRY _ZTI10S3583C6_nt[];
+extern  VTBL_ENTRY _ZTV10S3583C6_nt[];
+extern Class_Descriptor cd_S3583C4_nt;
+extern VTBL_ENTRY _ZTI10S3583C4_nt[];
+extern  VTBL_ENTRY _ZTV10S3583C4_nt[];
+extern Class_Descriptor cd_S3583C7;
+extern VTBL_ENTRY _ZTI7S3583C7[];
+extern  VTBL_ENTRY _ZTV7S3583C7[];
+extern Class_Descriptor cd_S3583C5;
+extern VTBL_ENTRY _ZTI7S3583C5[];
+extern  VTBL_ENTRY _ZTV7S3583C5[];
+extern  VTBL_ENTRY * __attribute__((weak))_ZTT7S3583C5[];
+extern Class_Descriptor cd_S3583C4_nt;
+extern VTBL_ENTRY _ZTI10S3583C4_nt[];
+extern  VTBL_ENTRY _ZTV10S3583C4_nt[];
+extern Class_Descriptor cd_S3583C7;
+extern VTBL_ENTRY _ZTI7S3583C7[];
+extern  VTBL_ENTRY _ZTV7S3583C7[];
+extern Class_Descriptor cd_S3583C10;
+extern VTBL_ENTRY _ZTI8S3583C10[];
+extern  VTBL_ENTRY _ZTV8S3583C10[];
+extern  VTBL_ENTRY * __attribute__((weak))_ZTT8S3583C10[];
+static Base_Class bases_S3583C9[] = {
+  // ofst, vfto, nneg, vtt_idx, base_vtt_idx, init_seq, direct, virtual
+  {&cd_S3583C4_nt,    ABISELECT(32,16), //bcp->offset
+    13, //bcp->virtual_function_table_offset
+    3, //num_negative_vtable_entries(t, bcp)
+    2, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    1, //init_seq
+    -1, //immediately_derived
+  1, 1},
+  {&cd_S3583C7,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    9, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {&cd_S3583C6_nt,    ABISELECT(8,4), //bcp->offset
+    9, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    10, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {&cd_S3583C6_nt,    ABISELECT(56,28), //bcp->offset
+    25, //bcp->virtual_function_table_offset
+    3, //num_negative_vtable_entries(t, bcp)
+    4, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    2, //init_seq
+    6, //immediately_derived
+  0, 1},
+  {&cd_S3583C4_nt,    ABISELECT(40,20), //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    4, //init_seq
+    6, //immediately_derived
+  0, 0},
+  {&cd_S3583C7,    ABISELECT(72,36), //bcp->offset
+    30, //bcp->virtual_function_table_offset
+    3, //num_negative_vtable_entries(t, bcp)
+    5, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    3, //init_seq
+    6, //immediately_derived
+  0, 1},
+  {&cd_S3583C5,    ABISELECT(40,20), //bcp->offset
+    18, //bcp->virtual_function_table_offset
+    5, //num_negative_vtable_entries(t, bcp)
+    3, //bcp->index_in_construction_vtbl_array
+    8, //bcp->base_subarray_index_in_construction_vtbl_array
+    5, //init_seq
+    -1, //immediately_derived
+  1, 1},
+  {&cd_S3583C4_nt,    ABISELECT(80,40), //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    6, //init_seq
+    9, //immediately_derived
+  0, 0},
+  {&cd_S3583C7,    ABISELECT(88,44), //bcp->offset
+    41, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    7, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    7, //init_seq
+    9, //immediately_derived
+  0, 0},
+  {&cd_S3583C10,    ABISELECT(80,40), //bcp->offset
+    35, //bcp->virtual_function_table_offset
+    4, //num_negative_vtable_entries(t, bcp)
+    6, //bcp->index_in_construction_vtbl_array
+    11, //bcp->base_subarray_index_in_construction_vtbl_array
+    8, //init_seq
+    -1, //immediately_derived
+  1, 1},
+  {0}};
+extern VTBL_ENTRY _ZTI7S3583C9[];
+extern void _ZN7S3583C9D1Ev();
+extern void _ZN7S3583C9D0Ev();
+extern void ABISELECT(_ZThn8_N7S3583C9D1Ev,_ZThn4_N7S3583C9D1Ev)();
+extern void ABISELECT(_ZThn8_N7S3583C9D0Ev,_ZThn4_N7S3583C9D0Ev)();
+extern void ABISELECT(_ZTv0_n24_N7S3583C9D1Ev,_ZTv0_n12_N7S3583C9D1Ev)();
+extern void ABISELECT(_ZThn32_N7S3583C9D1Ev,_ZThn16_N7S3583C9D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N7S3583C9D0Ev,_ZTv0_n12_N7S3583C9D0Ev)();
+extern void ABISELECT(_ZThn32_N7S3583C9D0Ev,_ZThn16_N7S3583C9D0Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n40_N7S3583C9D1Ev,_ZTv0_n20_N7S3583C9D1Ev)();
+extern void ABISELECT(_ZThn40_N7S3583C9D1Ev,_ZThn20_N7S3583C9D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n40_N7S3583C9D0Ev,_ZTv0_n20_N7S3583C9D0Ev)();
+extern void ABISELECT(_ZThn40_N7S3583C9D0Ev,_ZThn20_N7S3583C9D0Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N7S3583C9D1Ev,_ZTv0_n12_N7S3583C9D1Ev)();
+extern void ABISELECT(_ZThn56_N7S3583C9D1Ev,_ZThn28_N7S3583C9D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N7S3583C9D0Ev,_ZTv0_n12_N7S3583C9D0Ev)();
+extern void ABISELECT(_ZThn56_N7S3583C9D0Ev,_ZThn28_N7S3583C9D0Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N7S3583C9D1Ev,_ZTv0_n12_N7S3583C9D1Ev)();
+extern void ABISELECT(_ZThn72_N7S3583C9D1Ev,_ZThn36_N7S3583C9D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N7S3583C9D0Ev,_ZTv0_n12_N7S3583C9D0Ev)();
+extern void ABISELECT(_ZThn72_N7S3583C9D0Ev,_ZThn36_N7S3583C9D0Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n32_N7S3583C9D1Ev,_ZTv0_n16_N7S3583C9D1Ev)();
+extern void ABISELECT(_ZThn80_N7S3583C9D1Ev,_ZThn40_N7S3583C9D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n32_N7S3583C9D0Ev,_ZTv0_n16_N7S3583C9D0Ev)();
+extern void ABISELECT(_ZThn80_N7S3583C9D0Ev,_ZThn40_N7S3583C9D0Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTvn8_n32_N7S3583C9D1Ev,_ZTvn4_n16_N7S3583C9D1Ev)();
+extern void ABISELECT(_ZTvn8_n32_N7S3583C9D0Ev,_ZTvn4_n16_N7S3583C9D0Ev)();
+static  VTBL_ENTRY vtc_S3583C9[] = {
+  ABISELECT(80,40),
+  ABISELECT(72,36),
+  ABISELECT(56,28),
+  ABISELECT(40,20),
+  ABISELECT(32,16),
+  0,
+  (VTBL_ENTRY)&(_ZTI7S3583C9[0]),
+  (VTBL_ENTRY)&_ZN7S3583C9D1Ev,
+  (VTBL_ENTRY)&_ZN7S3583C9D0Ev,
+  ABISELECT(-8,-4),
+  (VTBL_ENTRY)&(_ZTI7S3583C9[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZThn8_N7S3583C9D1Ev,_ZThn4_N7S3583C9D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZThn8_N7S3583C9D0Ev,_ZThn4_N7S3583C9D0Ev),
+  ABISELECT(-32,-16),
+  ABISELECT(-32,-16),
+  (VTBL_ENTRY)&(_ZTI7S3583C9[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C9D1Ev,_ZTv0_n12_N7S3583C9D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C9D0Ev,_ZTv0_n12_N7S3583C9D0Ev),
+  ABISELECT(-40,-20),
+  ABISELECT(32,16),
+  ABISELECT(16,8),
+  ABISELECT(-40,-20),
+  (VTBL_ENTRY)&(_ZTI7S3583C9[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n40_N7S3583C9D1Ev,_ZTv0_n20_N7S3583C9D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n40_N7S3583C9D0Ev,_ZTv0_n20_N7S3583C9D0Ev),
+  ABISELECT(-56,-28),
+  ABISELECT(-56,-28),
+  (VTBL_ENTRY)&(_ZTI7S3583C9[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C9D1Ev,_ZTv0_n12_N7S3583C9D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C9D0Ev,_ZTv0_n12_N7S3583C9D0Ev),
+  ABISELECT(-72,-36),
+  ABISELECT(-72,-36),
+  (VTBL_ENTRY)&(_ZTI7S3583C9[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C9D1Ev,_ZTv0_n12_N7S3583C9D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C9D0Ev,_ZTv0_n12_N7S3583C9D0Ev),
+  ABISELECT(-80,-40),
+  ABISELECT(-24,-12),
+  ABISELECT(-80,-40),
+  (VTBL_ENTRY)&(_ZTI7S3583C9[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n32_N7S3583C9D1Ev,_ZTv0_n16_N7S3583C9D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n32_N7S3583C9D0Ev,_ZTv0_n16_N7S3583C9D0Ev),
+  ABISELECT(-88,-44),
+  (VTBL_ENTRY)&(_ZTI7S3583C9[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTvn8_n32_N7S3583C9D1Ev,_ZTvn4_n16_N7S3583C9D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTvn8_n32_N7S3583C9D0Ev,_ZTvn4_n16_N7S3583C9D0Ev),
+};
+extern VTBL_ENTRY _ZTV7S3583C9[];
+extern void _ZN7S3583C5D1Ev();
+extern void _ZN7S3583C5D0Ev();
+static  VTBL_ENTRY _tg__ZTV7S3583C5__7S3583C9[] = {
+  ABISELECT(32,16),
+  ABISELECT(16,8),
+  0,
+  (VTBL_ENTRY)&(_ZTI7S3583C5[0]),
+  (VTBL_ENTRY)&_ZN7S3583C5D1Ev,
+  (VTBL_ENTRY)&_ZN7S3583C5D0Ev,
+};
+extern void ABISELECT(_ZTv0_n24_N7S3583C5D1Ev,_ZTv0_n12_N7S3583C5D1Ev)();
+extern void ABISELECT(_ZThn16_N7S3583C5D1Ev,_ZThn8_N7S3583C5D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N7S3583C5D0Ev,_ZTv0_n12_N7S3583C5D0Ev)();
+extern void ABISELECT(_ZThn16_N7S3583C5D0Ev,_ZThn8_N7S3583C5D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV10S3583C6_nt__7S3583C5__7S3583C9[] = {
+  ABISELECT(-16,-8),
+  ABISELECT(-16,-8),
+  (VTBL_ENTRY)&(_ZTI7S3583C5[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C5D1Ev,_ZTv0_n12_N7S3583C5D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C5D0Ev,_ZTv0_n12_N7S3583C5D0Ev),
+};
+extern void ABISELECT(_ZTv0_n24_N7S3583C5D1Ev,_ZTv0_n12_N7S3583C5D1Ev)();
+extern void ABISELECT(_ZThn32_N7S3583C5D1Ev,_ZThn16_N7S3583C5D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N7S3583C5D0Ev,_ZTv0_n12_N7S3583C5D0Ev)();
+extern void ABISELECT(_ZThn32_N7S3583C5D0Ev,_ZThn16_N7S3583C5D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV7S3583C7__7S3583C5__7S3583C9[] = {
+  ABISELECT(-32,-16),
+  ABISELECT(-32,-16),
+  (VTBL_ENTRY)&(_ZTI7S3583C5[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C5D1Ev,_ZTv0_n12_N7S3583C5D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C5D0Ev,_ZTv0_n12_N7S3583C5D0Ev),
+};
+extern void _ZN8S3583C10D1Ev();
+extern void _ZN8S3583C10D0Ev();
+static  VTBL_ENTRY _tg__ZTV8S3583C10__7S3583C9[] = {
+  ABISELECT(-24,-12),
+  0,
+  (VTBL_ENTRY)&(_ZTI8S3583C10[0]),
+  (VTBL_ENTRY)&_ZN8S3583C10D1Ev,
+  (VTBL_ENTRY)&_ZN8S3583C10D0Ev,
+};
+extern void ABISELECT(_ZTv0_n24_N8S3583C10D1Ev,_ZTv0_n12_N8S3583C10D1Ev)();
+extern void ABISELECT(_ZTv0_n24_N8S3583C10D0Ev,_ZTv0_n12_N8S3583C10D0Ev)();
+static  VTBL_ENTRY _tg__ZTV10S3583C6_nt__8S3583C10__7S3583C9[] = {
+  ABISELECT(24,12),
+  ABISELECT(24,12),
+  (VTBL_ENTRY)&(_ZTI8S3583C10[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C10D1Ev,_ZTv0_n12_N8S3583C10D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C10D0Ev,_ZTv0_n12_N8S3583C10D0Ev),
+};
+static  VTT_ENTRY vtt_S3583C9[] = {
+  {&(_ZTV7S3583C9[7]),  7,45},
+  {&(_ZTV7S3583C9[16]),  16,45},
+  {&(_ZTV7S3583C9[23]),  23,45},
+  {&(_ZTV7S3583C9[28]),  28,45},
+  {&(_ZTV7S3583C9[33]),  33,45},
+  {&(_ZTV7S3583C9[39]),  39,45},
+  {&(_ZTV7S3583C9[43]),  43,45},
+  {&(_tg__ZTV7S3583C5__7S3583C9[4]),  4,6},
+  {&(_tg__ZTV10S3583C6_nt__7S3583C5__7S3583C9[3]),  3,5},
+  {&(_tg__ZTV7S3583C7__7S3583C5__7S3583C9[3]),  3,5},
+  {&(_tg__ZTV8S3583C10__7S3583C9[3]),  3,5},
+  {&(_tg__ZTV10S3583C6_nt__8S3583C10__7S3583C9[3]),  3,5},
+};
+extern VTBL_ENTRY _ZTI7S3583C9[];
+extern  VTBL_ENTRY _ZTV7S3583C9[];
+extern  VTBL_ENTRY * __attribute__((weak))_ZTT7S3583C9[];
+static VTBL_ENTRY alt_thunk_names4[] = {
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n24_N7S3583C5D0Ev,_ZTv0_n12_N7S3583C5D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn32_N7S3583C5D0Ev,_ZThn16_N7S3583C5D0Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn16_N7S3583C5D0Ev,_ZThn8_N7S3583C5D0Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n24_N7S3583C5D1Ev,_ZTv0_n12_N7S3583C5D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn32_N7S3583C5D1Ev,_ZThn16_N7S3583C5D1Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn16_N7S3583C5D1Ev,_ZThn8_N7S3583C5D1Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n32_N7S3583C9D0Ev,_ZTv0_n16_N7S3583C9D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn80_N7S3583C9D0Ev,_ZThn40_N7S3583C9D0Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n32_N7S3583C9D1Ev,_ZTv0_n16_N7S3583C9D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn80_N7S3583C9D1Ev,_ZThn40_N7S3583C9D1Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n40_N7S3583C9D0Ev,_ZTv0_n20_N7S3583C9D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn40_N7S3583C9D0Ev,_ZThn20_N7S3583C9D0Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n40_N7S3583C9D1Ev,_ZTv0_n20_N7S3583C9D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn40_N7S3583C9D1Ev,_ZThn20_N7S3583C9D1Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n24_N7S3583C9D0Ev,_ZTv0_n12_N7S3583C9D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn72_N7S3583C9D0Ev,_ZThn36_N7S3583C9D0Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn56_N7S3583C9D0Ev,_ZThn28_N7S3583C9D0Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn32_N7S3583C9D0Ev,_ZThn16_N7S3583C9D0Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n24_N7S3583C9D1Ev,_ZTv0_n12_N7S3583C9D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn72_N7S3583C9D1Ev,_ZThn36_N7S3583C9D1Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn56_N7S3583C9D1Ev,_ZThn28_N7S3583C9D1Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn32_N7S3583C9D1Ev,_ZThn16_N7S3583C9D1Ev),
+  ALT_NAMES_TERMINATOR,
+ALT_NAMES_TERMINATOR};
+Class_Descriptor cd_S3583C9 = {  "S3583C9", // class name
+  bases_S3583C9, 10,
+  &(vtc_S3583C9[0]), // expected_vtbl_contents
+  &(vtt_S3583C9[0]), // expected_vtt_contents
+  ABISELECT(96,48), // object size
+  NSPAIRA(_ZTI7S3583C9),ABISELECT(104,56), //typeinfo_var
+  NSPAIRA(_ZTV7S3583C9),45, //virtual function table var
+  7, // offset into main vftv pointed to by object[0]
+  NSPAIRA(_ZTT7S3583C9),12, //virtual table table var
+  10, // n_initialized_bases
+  1, // has_virtual_bases
+  0, // has_class_type_fields
+  alt_thunk_names4,
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S3583C11  : virtual S3583C5 {
+  virtual  ~S3583C11(); // _ZN8S3583C11D2Ev
+  S3583C11(); // tgen
+};
+//SIG(-1 S3583C11) C1{ VBC2{ VBC3{ vd m Fi} BC4{ vd m} VBC5{ vd m} vd Fi} vd}
+
+
+ S3583C11 ::~S3583C11(){ note_dtor("S3583C11", this);}
+S3583C11 ::S3583C11(){ note_ctor("S3583C11", this);} // tgen
+
+static void Test_S3583C11()
+{
+  extern Class_Descriptor cd_S3583C11;
+  void *lvp;
+  {
+    ABISELECT(double,int) buf[6];
+    init_test(&cd_S3583C11, buf);
+    S3583C11 *dp, &lv = *(dp=new (buf) S3583C11());
+    lvp = (void*)&lv;
+    check2(sizeof(lv), ABISELECT(40,20), "sizeof(S3583C11)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S3583C11)");
+    check_base_class_offset(lv, (S3583C6_nt*)(S3583C5*), ABISELECT(24,12), "S3583C11");
+    check_base_class_offset(lv, (S3583C4_nt*)(S3583C5*), ABISELECT(8,4), "S3583C11");
+    check_base_class_offset(lv, (S3583C7*)(S3583C5*), 0, "S3583C11");
+    check_base_class_offset(lv, (S3583C5*), ABISELECT(8,4), "S3583C11");
+    test_class_info(&lv, &cd_S3583C11);
+    dp->~S3583C11();
+  }
+  Check_Ctor_Dtor_Calls(lvp);
+}
+static Arrange_To_Call_Me vS3583C11(Test_S3583C11, "S3583C11", ABISELECT(40,20));
+
+#else // __cplusplus
+
+extern void _ZN8S3583C11C1Ev();
+extern void _ZN8S3583C11D2Ev();
+Name_Map name_map_S3583C11[] = {
+  NSPAIR(_ZN8S3583C11C1Ev),
+  NSPAIR(_ZN8S3583C11D2Ev),
+  {0,0}
+};
+extern Class_Descriptor cd_S3583C6_nt;
+extern VTBL_ENTRY _ZTI10S3583C6_nt[];
+extern  VTBL_ENTRY _ZTV10S3583C6_nt[];
+extern Class_Descriptor cd_S3583C4_nt;
+extern VTBL_ENTRY _ZTI10S3583C4_nt[];
+extern  VTBL_ENTRY _ZTV10S3583C4_nt[];
+extern Class_Descriptor cd_S3583C7;
+extern VTBL_ENTRY _ZTI7S3583C7[];
+extern  VTBL_ENTRY _ZTV7S3583C7[];
+extern Class_Descriptor cd_S3583C5;
+extern VTBL_ENTRY _ZTI7S3583C5[];
+extern  VTBL_ENTRY _ZTV7S3583C5[];
+extern  VTBL_ENTRY * __attribute__((weak))_ZTT7S3583C5[];
+static Base_Class bases_S3583C11[] = {
+  // ofst, vfto, nneg, vtt_idx, base_vtt_idx, init_seq, direct, virtual
+  {&cd_S3583C6_nt,    ABISELECT(24,12), //bcp->offset
+    15, //bcp->virtual_function_table_offset
+    3, //num_negative_vtable_entries(t, bcp)
+    3, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    1, //init_seq
+    3, //immediately_derived
+  0, 1},
+  {&cd_S3583C4_nt,    ABISELECT(8,4), //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    3, //init_seq
+    3, //immediately_derived
+  0, 0},
+  {&cd_S3583C7,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    3, //num_negative_vtable_entries(t, bcp)
+    4, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    2, //init_seq
+    3, //immediately_derived
+  0, 1},
+  {&cd_S3583C5,    ABISELECT(8,4), //bcp->offset
+    8, //bcp->virtual_function_table_offset
+    5, //num_negative_vtable_entries(t, bcp)
+    2, //bcp->index_in_construction_vtbl_array
+    5, //bcp->base_subarray_index_in_construction_vtbl_array
+    4, //init_seq
+    -1, //immediately_derived
+  1, 1},
+  {0}};
+extern VTBL_ENTRY _ZTI8S3583C11[];
+extern void _ZN8S3583C11D1Ev();
+extern void _ZN8S3583C11D0Ev();
+extern void ABISELECT(_ZTv0_n40_N8S3583C11D1Ev,_ZTv0_n20_N8S3583C11D1Ev)();
+extern void ABISELECT(_ZThn8_N8S3583C11D1Ev,_ZThn4_N8S3583C11D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n40_N8S3583C11D0Ev,_ZTv0_n20_N8S3583C11D0Ev)();
+extern void ABISELECT(_ZThn8_N8S3583C11D0Ev,_ZThn4_N8S3583C11D0Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N8S3583C11D1Ev,_ZTv0_n12_N8S3583C11D1Ev)();
+extern void ABISELECT(_ZThn24_N8S3583C11D1Ev,_ZThn12_N8S3583C11D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N8S3583C11D0Ev,_ZTv0_n12_N8S3583C11D0Ev)();
+extern void ABISELECT(_ZThn24_N8S3583C11D0Ev,_ZThn12_N8S3583C11D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY vtc_S3583C11[] = {
+  0,
+  ABISELECT(24,12),
+  ABISELECT(8,4),
+  0,
+  0,
+  (VTBL_ENTRY)&(_ZTI8S3583C11[0]),
+  (VTBL_ENTRY)&_ZN8S3583C11D1Ev,
+  (VTBL_ENTRY)&_ZN8S3583C11D0Ev,
+  ABISELECT(-8,-4),
+  ABISELECT(-8,-4),
+  ABISELECT(16,8),
+  ABISELECT(-8,-4),
+  (VTBL_ENTRY)&(_ZTI8S3583C11[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n40_N8S3583C11D1Ev,_ZTv0_n20_N8S3583C11D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n40_N8S3583C11D0Ev,_ZTv0_n20_N8S3583C11D0Ev),
+  ABISELECT(-24,-12),
+  ABISELECT(-24,-12),
+  (VTBL_ENTRY)&(_ZTI8S3583C11[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C11D1Ev,_ZTv0_n12_N8S3583C11D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C11D0Ev,_ZTv0_n12_N8S3583C11D0Ev),
+};
+extern VTBL_ENTRY _ZTV8S3583C11[];
+extern void _ZN7S3583C5D1Ev();
+extern void _ZN7S3583C5D0Ev();
+static  VTBL_ENTRY _tg__ZTV7S3583C5__8S3583C11[] = {
+  ABISELECT(-8,-4),
+  ABISELECT(16,8),
+  0,
+  (VTBL_ENTRY)&(_ZTI7S3583C5[0]),
+  (VTBL_ENTRY)&_ZN7S3583C5D1Ev,
+  (VTBL_ENTRY)&_ZN7S3583C5D0Ev,
+};
+extern void ABISELECT(_ZTv0_n24_N7S3583C5D1Ev,_ZTv0_n12_N7S3583C5D1Ev)();
+extern void ABISELECT(_ZThn16_N7S3583C5D1Ev,_ZThn8_N7S3583C5D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N7S3583C5D0Ev,_ZTv0_n12_N7S3583C5D0Ev)();
+extern void ABISELECT(_ZThn16_N7S3583C5D0Ev,_ZThn8_N7S3583C5D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV10S3583C6_nt__7S3583C5__8S3583C11[] = {
+  ABISELECT(-16,-8),
+  ABISELECT(-16,-8),
+  (VTBL_ENTRY)&(_ZTI7S3583C5[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C5D1Ev,_ZTv0_n12_N7S3583C5D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C5D0Ev,_ZTv0_n12_N7S3583C5D0Ev),
+};
+extern void ABISELECT(_ZTv0_n24_N7S3583C5D1Ev,_ZTv0_n12_N7S3583C5D1Ev)();
+extern void ABISELECT(_ZTv0_n24_N7S3583C5D0Ev,_ZTv0_n12_N7S3583C5D0Ev)();
+static  VTBL_ENTRY _tg__ZTV7S3583C7__7S3583C5__8S3583C11[] = {
+  ABISELECT(8,4),
+  ABISELECT(8,4),
+  (VTBL_ENTRY)&(_ZTI7S3583C5[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C5D1Ev,_ZTv0_n12_N7S3583C5D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C5D0Ev,_ZTv0_n12_N7S3583C5D0Ev),
+};
+static  VTT_ENTRY vtt_S3583C11[] = {
+  {&(_ZTV8S3583C11[6]),  6,20},
+  {&(_ZTV8S3583C11[13]),  13,20},
+  {&(_ZTV8S3583C11[18]),  18,20},
+  {&(_ZTV8S3583C11[6]),  6,20},
+  {&(_tg__ZTV7S3583C5__8S3583C11[4]),  4,6},
+  {&(_tg__ZTV10S3583C6_nt__7S3583C5__8S3583C11[3]),  3,5},
+  {&(_tg__ZTV7S3583C7__7S3583C5__8S3583C11[3]),  3,5},
+};
+extern VTBL_ENTRY _ZTI8S3583C11[];
+extern  VTBL_ENTRY _ZTV8S3583C11[];
+extern  VTBL_ENTRY * __attribute__((weak))_ZTT8S3583C11[];
+static VTBL_ENTRY alt_thunk_names5[] = {
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n24_N7S3583C5D0Ev,_ZTv0_n12_N7S3583C5D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn16_N7S3583C5D0Ev,_ZThn8_N7S3583C5D0Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n24_N7S3583C5D1Ev,_ZTv0_n12_N7S3583C5D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn16_N7S3583C5D1Ev,_ZThn8_N7S3583C5D1Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n24_N8S3583C11D0Ev,_ZTv0_n12_N8S3583C11D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn24_N8S3583C11D0Ev,_ZThn12_N8S3583C11D0Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n24_N8S3583C11D1Ev,_ZTv0_n12_N8S3583C11D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn24_N8S3583C11D1Ev,_ZThn12_N8S3583C11D1Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n40_N8S3583C11D0Ev,_ZTv0_n20_N8S3583C11D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn8_N8S3583C11D0Ev,_ZThn4_N8S3583C11D0Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n40_N8S3583C11D1Ev,_ZTv0_n20_N8S3583C11D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn8_N8S3583C11D1Ev,_ZThn4_N8S3583C11D1Ev),
+  ALT_NAMES_TERMINATOR,
+ALT_NAMES_TERMINATOR};
+Class_Descriptor cd_S3583C11 = {  "S3583C11", // class name
+  bases_S3583C11, 4,
+  &(vtc_S3583C11[0]), // expected_vtbl_contents
+  &(vtt_S3583C11[0]), // expected_vtt_contents
+  ABISELECT(40,20), // object size
+  NSPAIRA(_ZTI8S3583C11),ABISELECT(40,24), //typeinfo_var
+  NSPAIRA(_ZTV8S3583C11),20, //virtual function table var
+  6, // offset into main vftv pointed to by object[0]
+  NSPAIRA(_ZTT8S3583C11),7, //virtual table table var
+  4, // n_initialized_bases
+  1, // has_virtual_bases
+  0, // has_class_type_fields
+  alt_thunk_names5,
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S3583C8  : virtual S3583C4_nt , virtual S3583C7 , virtual S3583C5 , virtual S3583C9 , S3583C11 {
+  virtual  ~S3583C8(); // _ZN7S3583C8D2Ev
+  S3583C8(); // tgen
+};
+//SIG(-1 S3583C8) C1{ VBC2{ vd m} VBC3{ vd m} VBC4{ VBC5{ vd m Fi} BC2 VBC3 vd Fi} VBC6{ VBC2 BC3 BC5 VBC4 VBC7{ BC2 VBC5 BC3 vd} vd Fp} BC8{ VBC4 vd} vd}
+
+
+ S3583C8 ::~S3583C8(){ note_dtor("S3583C8", this);}
+S3583C8 ::S3583C8(){ note_ctor("S3583C8", this);} // tgen
+
+static void Test_S3583C8()
+{
+  extern Class_Descriptor cd_S3583C8;
+  void *lvp;
+  {
+    ABISELECT(double,int) buf[13];
+    init_test(&cd_S3583C8, buf);
+    S3583C8 *dp, &lv = *(dp=new (buf) S3583C8());
+    lvp = (void*)&lv;
+    check2(sizeof(lv), ABISELECT(96,48), "sizeof(S3583C8)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S3583C8)");
+    /*is_ambiguous_... S3583C8::S3583C4_nt */ AMB_check_base_class_offset(lv, (S3583C4_nt*), ABISELECT(8,4), "S3583C8");
+    /*is_ambiguous_... S3583C9::S3583C4_nt */ AMB_check_base_class_offset(lv, (S3583C4_nt*)(S3583C9*), ABISELECT(8,4), "S3583C8");
+    /*is_ambiguous_... S3583C8::S3583C7 */ AMB_check_base_class_offset(lv, (S3583C7*), 0, "S3583C8");
+    check_base_class_offset(lv, (S3583C7*)(S3583C5*), 0, "S3583C8");
+    check_base_class_offset(lv, (S3583C6_nt*)(S3583C5*), ABISELECT(32,16), "S3583C8");
+    check_base_class_offset(lv, (S3583C6_nt*)(S3583C10*), ABISELECT(32,16), "S3583C8");
+    check_base_class_offset(lv, (S3583C4_nt*)(S3583C5*), ABISELECT(16,8), "S3583C8");
+    check_base_class_offset(lv, (S3583C5*), ABISELECT(16,8), "S3583C8");
+    check_base_class_offset(lv, (S3583C5*)(S3583C9*), ABISELECT(16,8), "S3583C8");
+    check_base_class_offset(lv, (S3583C5*)(S3583C11*), ABISELECT(16,8), "S3583C8");
+    /*is_ambiguous_... S3583C9::S3583C7 */ AMB_check_base_class_offset(lv, (S3583C7*)(S3583C9*), ABISELECT(48,24), "S3583C8");
+    /*is_ambiguous_... S3583C9::S3583C6_nt */ AMB_check_base_class_offset(lv, (S3583C6_nt*)(S3583C9*), ABISELECT(56,28), "S3583C8");
+    check_base_class_offset(lv, (S3583C4_nt*)(S3583C10*), ABISELECT(80,40), "S3583C8");
+    check_base_class_offset(lv, (S3583C7*)(S3583C10*), ABISELECT(88,44), "S3583C8");
+    check_base_class_offset(lv, (S3583C10*)(S3583C9*), ABISELECT(80,40), "S3583C8");
+    check_base_class_offset(lv, (S3583C9*), ABISELECT(48,24), "S3583C8");
+    check_base_class_offset(lv, (S3583C11*), 0, "S3583C8");
+    test_class_info(&lv, &cd_S3583C8);
+    dp->~S3583C8();
+  }
+  Check_Ctor_Dtor_Calls(lvp);
+}
+static Arrange_To_Call_Me vS3583C8(Test_S3583C8, "S3583C8", ABISELECT(96,48));
+
+#else // __cplusplus
+
+extern void _ZN7S3583C8C1Ev();
+extern void _ZN7S3583C8D2Ev();
+Name_Map name_map_S3583C8[] = {
+  NSPAIR(_ZN7S3583C8C1Ev),
+  NSPAIR(_ZN7S3583C8D2Ev),
+  {0,0}
+};
+extern Class_Descriptor cd_S3583C4_nt;
+extern VTBL_ENTRY _ZTI10S3583C4_nt[];
+extern  VTBL_ENTRY _ZTV10S3583C4_nt[];
+extern Class_Descriptor cd_S3583C7;
+extern VTBL_ENTRY _ZTI7S3583C7[];
+extern  VTBL_ENTRY _ZTV7S3583C7[];
+extern Class_Descriptor cd_S3583C6_nt;
+extern VTBL_ENTRY _ZTI10S3583C6_nt[];
+extern  VTBL_ENTRY _ZTV10S3583C6_nt[];
+extern Class_Descriptor cd_S3583C4_nt;
+extern VTBL_ENTRY _ZTI10S3583C4_nt[];
+extern  VTBL_ENTRY _ZTV10S3583C4_nt[];
+extern Class_Descriptor cd_S3583C5;
+extern VTBL_ENTRY _ZTI7S3583C5[];
+extern  VTBL_ENTRY _ZTV7S3583C5[];
+extern  VTBL_ENTRY * __attribute__((weak))_ZTT7S3583C5[];
+extern Class_Descriptor cd_S3583C7;
+extern VTBL_ENTRY _ZTI7S3583C7[];
+extern  VTBL_ENTRY _ZTV7S3583C7[];
+extern Class_Descriptor cd_S3583C6_nt;
+extern VTBL_ENTRY _ZTI10S3583C6_nt[];
+extern  VTBL_ENTRY _ZTV10S3583C6_nt[];
+extern Class_Descriptor cd_S3583C4_nt;
+extern VTBL_ENTRY _ZTI10S3583C4_nt[];
+extern  VTBL_ENTRY _ZTV10S3583C4_nt[];
+extern Class_Descriptor cd_S3583C7;
+extern VTBL_ENTRY _ZTI7S3583C7[];
+extern  VTBL_ENTRY _ZTV7S3583C7[];
+extern Class_Descriptor cd_S3583C10;
+extern VTBL_ENTRY _ZTI8S3583C10[];
+extern  VTBL_ENTRY _ZTV8S3583C10[];
+extern  VTBL_ENTRY * __attribute__((weak))_ZTT8S3583C10[];
+extern Class_Descriptor cd_S3583C9;
+extern VTBL_ENTRY _ZTI7S3583C9[];
+extern  VTBL_ENTRY _ZTV7S3583C9[];
+extern  VTBL_ENTRY * __attribute__((weak))_ZTT7S3583C9[];
+extern Class_Descriptor cd_S3583C11;
+extern VTBL_ENTRY _ZTI8S3583C11[];
+extern  VTBL_ENTRY _ZTV8S3583C11[];
+extern  VTBL_ENTRY * __attribute__((weak))_ZTT8S3583C11[];
+static Base_Class bases_S3583C8[] = {
+  // ofst, vfto, nneg, vtt_idx, base_vtt_idx, init_seq, direct, virtual
+  {&cd_S3583C4_nt,    ABISELECT(8,4), //bcp->offset
+    11, //bcp->virtual_function_table_offset
+    3, //num_negative_vtable_entries(t, bcp)
+    6, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    1, //init_seq
+    -1, //immediately_derived
+  1, 1},
+  {&cd_S3583C7,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    3, //num_negative_vtable_entries(t, bcp)
+    7, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    2, //init_seq
+    -1, //immediately_derived
+  1, 1},
+  {&cd_S3583C6_nt,    ABISELECT(32,16), //bcp->offset
+    23, //bcp->virtual_function_table_offset
+    3, //num_negative_vtable_entries(t, bcp)
+    9, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    3, //init_seq
+    4, //immediately_derived
+  0, 1},
+  {&cd_S3583C4_nt,    ABISELECT(16,8), //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    4, //init_seq
+    4, //immediately_derived
+  0, 0},
+  {&cd_S3583C5,    ABISELECT(16,8), //bcp->offset
+    16, //bcp->virtual_function_table_offset
+    5, //num_negative_vtable_entries(t, bcp)
+    8, //bcp->index_in_construction_vtbl_array
+    14, //bcp->base_subarray_index_in_construction_vtbl_array
+    5, //init_seq
+    -1, //immediately_derived
+  1, 1},
+  {&cd_S3583C7,    ABISELECT(48,24), //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    9, //init_seq
+    10, //immediately_derived
+  0, 0},
+  {&cd_S3583C6_nt,    ABISELECT(56,28), //bcp->offset
+    38, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    11, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    10, //init_seq
+    10, //immediately_derived
+  0, 0},
+  {&cd_S3583C4_nt,    ABISELECT(80,40), //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    6, //init_seq
+    9, //immediately_derived
+  0, 0},
+  {&cd_S3583C7,    ABISELECT(88,44), //bcp->offset
+    48, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    13, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    7, //init_seq
+    9, //immediately_derived
+  0, 0},
+  {&cd_S3583C10,    ABISELECT(80,40), //bcp->offset
+    42, //bcp->virtual_function_table_offset
+    4, //num_negative_vtable_entries(t, bcp)
+    12, //bcp->index_in_construction_vtbl_array
+    24, //bcp->base_subarray_index_in_construction_vtbl_array
+    8, //init_seq
+    10, //immediately_derived
+  0, 1},
+  {&cd_S3583C9,    ABISELECT(48,24), //bcp->offset
+    28, //bcp->virtual_function_table_offset
+    8, //num_negative_vtable_entries(t, bcp)
+    10, //bcp->index_in_construction_vtbl_array
+    17, //bcp->base_subarray_index_in_construction_vtbl_array
+    11, //init_seq
+    -1, //immediately_derived
+  1, 1},
+  {&cd_S3583C11,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    6, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    2, //bcp->base_subarray_index_in_construction_vtbl_array
+    12, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {0}};
+extern VTBL_ENTRY _ZTI7S3583C8[];
+extern void ABISELECT(_ZTv0_n24_N7S3583C8D1Ev,_ZTv0_n12_N7S3583C8D1Ev)();
+extern void _ZN7S3583C8D1Ev() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N7S3583C8D0Ev,_ZTv0_n12_N7S3583C8D0Ev)();
+extern void _ZN7S3583C8D0Ev() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N7S3583C8D1Ev,_ZTv0_n12_N7S3583C8D1Ev)();
+extern void ABISELECT(_ZThn8_N7S3583C8D1Ev,_ZThn4_N7S3583C8D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N7S3583C8D0Ev,_ZTv0_n12_N7S3583C8D0Ev)();
+extern void ABISELECT(_ZThn8_N7S3583C8D0Ev,_ZThn4_N7S3583C8D0Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n40_N7S3583C8D1Ev,_ZTv0_n20_N7S3583C8D1Ev)();
+extern void ABISELECT(_ZThn16_N7S3583C8D1Ev,_ZThn8_N7S3583C8D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n40_N7S3583C8D0Ev,_ZTv0_n20_N7S3583C8D0Ev)();
+extern void ABISELECT(_ZThn16_N7S3583C8D0Ev,_ZThn8_N7S3583C8D0Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N7S3583C8D1Ev,_ZTv0_n12_N7S3583C8D1Ev)();
+extern void ABISELECT(_ZThn32_N7S3583C8D1Ev,_ZThn16_N7S3583C8D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N7S3583C8D0Ev,_ZTv0_n12_N7S3583C8D0Ev)();
+extern void ABISELECT(_ZThn32_N7S3583C8D0Ev,_ZThn16_N7S3583C8D0Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n64_N7S3583C8D1Ev,_ZTv0_n32_N7S3583C8D1Ev)();
+extern void ABISELECT(_ZThn48_N7S3583C8D1Ev,_ZThn24_N7S3583C8D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n64_N7S3583C8D0Ev,_ZTv0_n32_N7S3583C8D0Ev)();
+extern void ABISELECT(_ZThn48_N7S3583C8D0Ev,_ZThn24_N7S3583C8D0Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTvn8_n64_N7S3583C8D1Ev,_ZTvn4_n32_N7S3583C8D1Ev)();
+extern void ABISELECT(_ZTvn8_n64_N7S3583C8D0Ev,_ZTvn4_n32_N7S3583C8D0Ev)();
+extern void ABISELECT(_ZTv0_n32_N7S3583C8D1Ev,_ZTv0_n16_N7S3583C8D1Ev)();
+extern void ABISELECT(_ZThn80_N7S3583C8D1Ev,_ZThn40_N7S3583C8D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n32_N7S3583C8D0Ev,_ZTv0_n16_N7S3583C8D0Ev)();
+extern void ABISELECT(_ZThn80_N7S3583C8D0Ev,_ZThn40_N7S3583C8D0Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTvn8_n32_N7S3583C8D1Ev,_ZTvn4_n16_N7S3583C8D1Ev)();
+extern void ABISELECT(_ZTvn8_n32_N7S3583C8D0Ev,_ZTvn4_n16_N7S3583C8D0Ev)();
+static  VTBL_ENTRY vtc_S3583C8[] = {
+  ABISELECT(80,40),
+  ABISELECT(48,24),
+  ABISELECT(8,4),
+  0,
+  ABISELECT(32,16),
+  ABISELECT(16,8),
+  0,
+  0,
+  (VTBL_ENTRY)&(_ZTI7S3583C8[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C8D1Ev,_ZTv0_n12_N7S3583C8D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C8D0Ev,_ZTv0_n12_N7S3583C8D0Ev),
+  ABISELECT(-8,-4),
+  ABISELECT(-8,-4),
+  (VTBL_ENTRY)&(_ZTI7S3583C8[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C8D1Ev,_ZTv0_n12_N7S3583C8D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C8D0Ev,_ZTv0_n12_N7S3583C8D0Ev),
+  ABISELECT(-16,-8),
+  ABISELECT(-16,-8),
+  ABISELECT(16,8),
+  ABISELECT(-16,-8),
+  (VTBL_ENTRY)&(_ZTI7S3583C8[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n40_N7S3583C8D1Ev,_ZTv0_n20_N7S3583C8D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n40_N7S3583C8D0Ev,_ZTv0_n20_N7S3583C8D0Ev),
+  ABISELECT(-32,-16),
+  ABISELECT(-32,-16),
+  (VTBL_ENTRY)&(_ZTI7S3583C8[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C8D1Ev,_ZTv0_n12_N7S3583C8D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C8D0Ev,_ZTv0_n12_N7S3583C8D0Ev),
+  ABISELECT(-48,-24),
+  ABISELECT(32,16),
+  ABISELECT(-48,-24),
+  ABISELECT(-16,-8),
+  ABISELECT(-32,-16),
+  ABISELECT(-40,-20),
+  ABISELECT(-48,-24),
+  (VTBL_ENTRY)&(_ZTI7S3583C8[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n64_N7S3583C8D1Ev,_ZTv0_n32_N7S3583C8D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n64_N7S3583C8D0Ev,_ZTv0_n32_N7S3583C8D0Ev),
+  ABISELECT(-56,-28),
+  (VTBL_ENTRY)&(_ZTI7S3583C8[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTvn8_n64_N7S3583C8D1Ev,_ZTvn4_n32_N7S3583C8D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTvn8_n64_N7S3583C8D0Ev,_ZTvn4_n32_N7S3583C8D0Ev),
+  ABISELECT(-80,-40),
+  ABISELECT(-48,-24),
+  ABISELECT(-80,-40),
+  (VTBL_ENTRY)&(_ZTI7S3583C8[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n32_N7S3583C8D1Ev,_ZTv0_n16_N7S3583C8D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n32_N7S3583C8D0Ev,_ZTv0_n16_N7S3583C8D0Ev),
+  ABISELECT(-88,-44),
+  (VTBL_ENTRY)&(_ZTI7S3583C8[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTvn8_n32_N7S3583C8D1Ev,_ZTvn4_n16_N7S3583C8D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTvn8_n32_N7S3583C8D0Ev,_ZTvn4_n16_N7S3583C8D0Ev),
+};
+extern VTBL_ENTRY _ZTV7S3583C8[];
+extern void ABISELECT(_ZTv0_n24_N8S3583C11D1Ev,_ZTv0_n12_N8S3583C11D1Ev)();
+extern void _ZN8S3583C11D1Ev() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N8S3583C11D0Ev,_ZTv0_n12_N8S3583C11D0Ev)();
+extern void _ZN8S3583C11D0Ev() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV8S3583C11__7S3583C8[] = {
+  0,
+  ABISELECT(32,16),
+  ABISELECT(16,8),
+  0,
+  0,
+  (VTBL_ENTRY)&(_ZTI8S3583C11[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C11D1Ev,_ZTv0_n12_N8S3583C11D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C11D0Ev,_ZTv0_n12_N8S3583C11D0Ev),
+};
+extern void ABISELECT(_ZTv0_n40_N8S3583C11D1Ev,_ZTv0_n20_N8S3583C11D1Ev)();
+extern void ABISELECT(_ZThn16_N8S3583C11D1Ev,_ZThn8_N8S3583C11D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n40_N8S3583C11D0Ev,_ZTv0_n20_N8S3583C11D0Ev)();
+extern void ABISELECT(_ZThn16_N8S3583C11D0Ev,_ZThn8_N8S3583C11D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV7S3583C5__8S3583C11__7S3583C8[] = {
+  ABISELECT(-16,-8),
+  ABISELECT(-16,-8),
+  ABISELECT(16,8),
+  ABISELECT(-16,-8),
+  (VTBL_ENTRY)&(_ZTI8S3583C11[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n40_N8S3583C11D1Ev,_ZTv0_n20_N8S3583C11D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n40_N8S3583C11D0Ev,_ZTv0_n20_N8S3583C11D0Ev),
+};
+extern void ABISELECT(_ZTv0_n24_N8S3583C11D1Ev,_ZTv0_n12_N8S3583C11D1Ev)();
+extern void ABISELECT(_ZThn32_N8S3583C11D1Ev,_ZThn16_N8S3583C11D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N8S3583C11D0Ev,_ZTv0_n12_N8S3583C11D0Ev)();
+extern void ABISELECT(_ZThn32_N8S3583C11D0Ev,_ZThn16_N8S3583C11D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV10S3583C6_nt__8S3583C11__7S3583C8[] = {
+  ABISELECT(-32,-16),
+  ABISELECT(-32,-16),
+  (VTBL_ENTRY)&(_ZTI8S3583C11[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C11D1Ev,_ZTv0_n12_N8S3583C11D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C11D0Ev,_ZTv0_n12_N8S3583C11D0Ev),
+};
+extern void _ZN7S3583C5D1Ev();
+extern void _ZN7S3583C5D0Ev();
+static  VTBL_ENTRY _tg__ZTV7S3583C5__7S3583C8[] = {
+  ABISELECT(-16,-8),
+  ABISELECT(16,8),
+  0,
+  (VTBL_ENTRY)&(_ZTI7S3583C5[0]),
+  (VTBL_ENTRY)&_ZN7S3583C5D1Ev,
+  (VTBL_ENTRY)&_ZN7S3583C5D0Ev,
+};
+extern void ABISELECT(_ZTv0_n24_N7S3583C5D1Ev,_ZTv0_n12_N7S3583C5D1Ev)();
+extern void ABISELECT(_ZThn16_N7S3583C5D1Ev,_ZThn8_N7S3583C5D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N7S3583C5D0Ev,_ZTv0_n12_N7S3583C5D0Ev)();
+extern void ABISELECT(_ZThn16_N7S3583C5D0Ev,_ZThn8_N7S3583C5D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV10S3583C6_nt__7S3583C5__7S3583C8[] = {
+  ABISELECT(-16,-8),
+  ABISELECT(-16,-8),
+  (VTBL_ENTRY)&(_ZTI7S3583C5[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C5D1Ev,_ZTv0_n12_N7S3583C5D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C5D0Ev,_ZTv0_n12_N7S3583C5D0Ev),
+};
+extern void ABISELECT(_ZTv0_n24_N7S3583C5D1Ev,_ZTv0_n12_N7S3583C5D1Ev)();
+extern void ABISELECT(_ZTv0_n24_N7S3583C5D0Ev,_ZTv0_n12_N7S3583C5D0Ev)();
+static  VTBL_ENTRY _tg__ZTV7S3583C7__7S3583C5__7S3583C8[] = {
+  ABISELECT(16,8),
+  ABISELECT(16,8),
+  (VTBL_ENTRY)&(_ZTI7S3583C5[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C5D1Ev,_ZTv0_n12_N7S3583C5D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C5D0Ev,_ZTv0_n12_N7S3583C5D0Ev),
+};
+extern void _ZN7S3583C9D1Ev();
+extern void _ZN7S3583C9D0Ev();
+static  VTBL_ENTRY _tg__ZTV7S3583C9__7S3583C8[] = {
+  ABISELECT(32,16),
+  ABISELECT(-48,-24),
+  ABISELECT(-16,-8),
+  ABISELECT(-32,-16),
+  ABISELECT(-40,-20),
+  0,
+  (VTBL_ENTRY)&(_ZTI7S3583C9[0]),
+  (VTBL_ENTRY)&_ZN7S3583C9D1Ev,
+  (VTBL_ENTRY)&_ZN7S3583C9D0Ev,
+};
+extern void ABISELECT(_ZTv0_n24_N7S3583C9D1Ev,_ZTv0_n12_N7S3583C9D1Ev)();
+extern void ABISELECT(_ZTv0_n24_N7S3583C9D0Ev,_ZTv0_n12_N7S3583C9D0Ev)();
+static  VTBL_ENTRY _tg__ZTV10S3583C4_nt__7S3583C9__7S3583C8[] = {
+  ABISELECT(40,20),
+  ABISELECT(40,20),
+  (VTBL_ENTRY)&(_ZTI7S3583C9[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C9D1Ev,_ZTv0_n12_N7S3583C9D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C9D0Ev,_ZTv0_n12_N7S3583C9D0Ev),
+};
+extern void ABISELECT(_ZTv0_n40_N7S3583C9D1Ev,_ZTv0_n20_N7S3583C9D1Ev)();
+extern void ABISELECT(_ZTv0_n40_N7S3583C9D0Ev,_ZTv0_n20_N7S3583C9D0Ev)();
+static  VTBL_ENTRY _tg__ZTV7S3583C5__7S3583C9__7S3583C8[] = {
+  ABISELECT(32,16),
+  ABISELECT(-16,-8),
+  ABISELECT(16,8),
+  ABISELECT(32,16),
+  (VTBL_ENTRY)&(_ZTI7S3583C9[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n40_N7S3583C9D1Ev,_ZTv0_n20_N7S3583C9D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n40_N7S3583C9D0Ev,_ZTv0_n20_N7S3583C9D0Ev),
+};
+extern void ABISELECT(_ZTv0_n24_N7S3583C9D1Ev,_ZTv0_n12_N7S3583C9D1Ev)();
+extern void ABISELECT(_ZTv0_n24_N7S3583C9D0Ev,_ZTv0_n12_N7S3583C9D0Ev)();
+static  VTBL_ENTRY _tg__ZTV10S3583C6_nt__A1__7S3583C9__7S3583C8[] = {
+  ABISELECT(16,8),
+  ABISELECT(16,8),
+  (VTBL_ENTRY)&(_ZTI7S3583C9[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C9D1Ev,_ZTv0_n12_N7S3583C9D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C9D0Ev,_ZTv0_n12_N7S3583C9D0Ev),
+};
+extern void ABISELECT(_ZTv0_n24_N7S3583C9D1Ev,_ZTv0_n12_N7S3583C9D1Ev)();
+extern void ABISELECT(_ZTv0_n24_N7S3583C9D0Ev,_ZTv0_n12_N7S3583C9D0Ev)();
+static  VTBL_ENTRY _tg__ZTV7S3583C7__A1__7S3583C9__7S3583C8[] = {
+  ABISELECT(48,24),
+  ABISELECT(48,24),
+  (VTBL_ENTRY)&(_ZTI7S3583C9[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C9D1Ev,_ZTv0_n12_N7S3583C9D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C9D0Ev,_ZTv0_n12_N7S3583C9D0Ev),
+};
+extern void ABISELECT(_ZTv0_n32_N7S3583C9D1Ev,_ZTv0_n16_N7S3583C9D1Ev)();
+extern void ABISELECT(_ZThn32_N7S3583C9D1Ev,_ZThn16_N7S3583C9D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n32_N7S3583C9D0Ev,_ZTv0_n16_N7S3583C9D0Ev)();
+extern void ABISELECT(_ZThn32_N7S3583C9D0Ev,_ZThn16_N7S3583C9D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV8S3583C10__7S3583C9__7S3583C8[] = {
+  ABISELECT(-32,-16),
+  ABISELECT(-48,-24),
+  ABISELECT(-32,-16),
+  (VTBL_ENTRY)&(_ZTI7S3583C9[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n32_N7S3583C9D1Ev,_ZTv0_n16_N7S3583C9D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n32_N7S3583C9D0Ev,_ZTv0_n16_N7S3583C9D0Ev),
+};
+extern void ABISELECT(_ZTvn8_n32_N7S3583C9D1Ev,_ZTvn4_n16_N7S3583C9D1Ev)();
+extern void ABISELECT(_ZTvn8_n32_N7S3583C9D0Ev,_ZTvn4_n16_N7S3583C9D0Ev)();
+static  VTBL_ENTRY _tg__ZTV7S3583C78S3583C10__A2__7S3583C9__7S3583C8[] = {
+  ABISELECT(-40,-20),
+  (VTBL_ENTRY)&(_ZTI7S3583C9[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTvn8_n32_N7S3583C9D1Ev,_ZTvn4_n16_N7S3583C9D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTvn8_n32_N7S3583C9D0Ev,_ZTvn4_n16_N7S3583C9D0Ev),
+};
+extern void _ZN8S3583C10D1Ev();
+extern void _ZN8S3583C10D0Ev();
+static  VTBL_ENTRY _tg__ZTV8S3583C10__7S3583C8[] = {
+  ABISELECT(-48,-24),
+  0,
+  (VTBL_ENTRY)&(_ZTI8S3583C10[0]),
+  (VTBL_ENTRY)&_ZN8S3583C10D1Ev,
+  (VTBL_ENTRY)&_ZN8S3583C10D0Ev,
+};
+extern void ABISELECT(_ZTv0_n24_N8S3583C10D1Ev,_ZTv0_n12_N8S3583C10D1Ev)();
+extern void ABISELECT(_ZTv0_n24_N8S3583C10D0Ev,_ZTv0_n12_N8S3583C10D0Ev)();
+static  VTBL_ENTRY _tg__ZTV10S3583C6_nt__8S3583C10__7S3583C8[] = {
+  ABISELECT(48,24),
+  ABISELECT(48,24),
+  (VTBL_ENTRY)&(_ZTI8S3583C10[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C10D1Ev,_ZTv0_n12_N8S3583C10D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C10D0Ev,_ZTv0_n12_N8S3583C10D0Ev),
+};
+static  VTT_ENTRY vtt_S3583C8[] = {
+  {&(_ZTV7S3583C8[9]),  9,52},
+  {&(_tg__ZTV8S3583C11__7S3583C8[6]),  6,8},
+  {&(_tg__ZTV7S3583C5__8S3583C11__7S3583C8[5]),  5,7},
+  {&(_tg__ZTV10S3583C6_nt__8S3583C11__7S3583C8[3]),  3,5},
+  {&(_tg__ZTV8S3583C11__7S3583C8[6]),  6,8},
+  {&(_ZTV7S3583C8[14]),  14,52},
+  {&(_ZTV7S3583C8[9]),  9,52},
+  {&(_ZTV7S3583C8[21]),  21,52},
+  {&(_ZTV7S3583C8[26]),  26,52},
+  {&(_ZTV7S3583C8[36]),  36,52},
+  {&(_ZTV7S3583C8[40]),  40,52},
+  {&(_ZTV7S3583C8[46]),  46,52},
+  {&(_ZTV7S3583C8[50]),  50,52},
+  {&(_tg__ZTV7S3583C5__7S3583C8[4]),  4,6},
+  {&(_tg__ZTV10S3583C6_nt__7S3583C5__7S3583C8[3]),  3,5},
+  {&(_tg__ZTV7S3583C7__7S3583C5__7S3583C8[3]),  3,5},
+  {&(_tg__ZTV7S3583C9__7S3583C8[7]),  7,9},
+  {&(_tg__ZTV10S3583C4_nt__7S3583C9__7S3583C8[3]),  3,5},
+  {&(_tg__ZTV7S3583C5__7S3583C9__7S3583C8[5]),  5,7},
+  {&(_tg__ZTV10S3583C6_nt__A1__7S3583C9__7S3583C8[3]),  3,5},
+  {&(_tg__ZTV7S3583C7__A1__7S3583C9__7S3583C8[3]),  3,5},
+  {&(_tg__ZTV8S3583C10__7S3583C9__7S3583C8[4]),  4,6},
+  {&(_tg__ZTV7S3583C78S3583C10__A2__7S3583C9__7S3583C8[2]),  2,4},
+  {&(_tg__ZTV8S3583C10__7S3583C8[3]),  3,5},
+  {&(_tg__ZTV10S3583C6_nt__8S3583C10__7S3583C8[3]),  3,5},
+};
+extern VTBL_ENTRY _ZTI7S3583C8[];
+extern  VTBL_ENTRY _ZTV7S3583C8[];
+extern  VTBL_ENTRY * __attribute__((weak))_ZTT7S3583C8[];
+static VTBL_ENTRY alt_thunk_names6[] = {
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n32_N7S3583C9D0Ev,_ZTv0_n16_N7S3583C9D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn32_N7S3583C9D0Ev,_ZThn16_N7S3583C9D0Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n32_N7S3583C9D1Ev,_ZTv0_n16_N7S3583C9D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn32_N7S3583C9D1Ev,_ZThn16_N7S3583C9D1Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n24_N7S3583C5D0Ev,_ZTv0_n12_N7S3583C5D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn16_N7S3583C5D0Ev,_ZThn8_N7S3583C5D0Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n24_N7S3583C5D1Ev,_ZTv0_n12_N7S3583C5D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn16_N7S3583C5D1Ev,_ZThn8_N7S3583C5D1Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n40_N8S3583C11D0Ev,_ZTv0_n20_N8S3583C11D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn16_N8S3583C11D0Ev,_ZThn8_N8S3583C11D0Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n40_N8S3583C11D1Ev,_ZTv0_n20_N8S3583C11D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn16_N8S3583C11D1Ev,_ZThn8_N8S3583C11D1Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n24_N8S3583C11D0Ev,_ZTv0_n12_N8S3583C11D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn32_N8S3583C11D0Ev,_ZThn16_N8S3583C11D0Ev),
+  (VTBL_ENTRY)_ZN8S3583C11D0Ev,
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n24_N8S3583C11D1Ev,_ZTv0_n12_N8S3583C11D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn32_N8S3583C11D1Ev,_ZThn16_N8S3583C11D1Ev),
+  (VTBL_ENTRY)_ZN8S3583C11D1Ev,
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n32_N7S3583C8D0Ev,_ZTv0_n16_N7S3583C8D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn80_N7S3583C8D0Ev,_ZThn40_N7S3583C8D0Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n32_N7S3583C8D1Ev,_ZTv0_n16_N7S3583C8D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn80_N7S3583C8D1Ev,_ZThn40_N7S3583C8D1Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n64_N7S3583C8D0Ev,_ZTv0_n32_N7S3583C8D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn48_N7S3583C8D0Ev,_ZThn24_N7S3583C8D0Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n64_N7S3583C8D1Ev,_ZTv0_n32_N7S3583C8D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn48_N7S3583C8D1Ev,_ZThn24_N7S3583C8D1Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n40_N7S3583C8D0Ev,_ZTv0_n20_N7S3583C8D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn16_N7S3583C8D0Ev,_ZThn8_N7S3583C8D0Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n40_N7S3583C8D1Ev,_ZTv0_n20_N7S3583C8D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn16_N7S3583C8D1Ev,_ZThn8_N7S3583C8D1Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n24_N7S3583C8D0Ev,_ZTv0_n12_N7S3583C8D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn32_N7S3583C8D0Ev,_ZThn16_N7S3583C8D0Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn8_N7S3583C8D0Ev,_ZThn4_N7S3583C8D0Ev),
+  (VTBL_ENTRY)_ZN7S3583C8D0Ev,
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n24_N7S3583C8D1Ev,_ZTv0_n12_N7S3583C8D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn32_N7S3583C8D1Ev,_ZThn16_N7S3583C8D1Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn8_N7S3583C8D1Ev,_ZThn4_N7S3583C8D1Ev),
+  (VTBL_ENTRY)_ZN7S3583C8D1Ev,
+  ALT_NAMES_TERMINATOR,
+ALT_NAMES_TERMINATOR};
+Class_Descriptor cd_S3583C8 = {  "S3583C8", // class name
+  bases_S3583C8, 12,
+  &(vtc_S3583C8[0]), // expected_vtbl_contents
+  &(vtt_S3583C8[0]), // expected_vtt_contents
+  ABISELECT(96,48), // object size
+  NSPAIRA(_ZTI7S3583C8),ABISELECT(104,56), //typeinfo_var
+  NSPAIRA(_ZTV7S3583C8),52, //virtual function table var
+  9, // offset into main vftv pointed to by object[0]
+  NSPAIRA(_ZTT7S3583C8),25, //virtual table table var
+  12, // n_initialized_bases
+  1, // has_virtual_bases
+  0, // has_class_type_fields
+  alt_thunk_names6,
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S3583C13  : virtual S3583C10 , virtual S3583C7 , S3583C3 , S3583C6_nt , virtual S3583C9 {
+  virtual  ~S3583C13(); // _ZN8S3583C13D2Ev
+  virtual void  v1(); // _ZN8S3583C132v1Ev
+  S3583C13(); // tgen
+};
+//SIG(-1 S3583C13) C1{ VBC2{ BC3{ vd m} VBC4{ vd m Fi} BC5{ vd m} vd} VBC5 BC6{ VBC3 BC7{ VBC4 BC3 VBC5 vd Fi} vd Fp} BC4 VBC8{ VBC3 BC5 BC4 VBC7 VBC2 vd Fp} vd v1}
+
+
+ S3583C13 ::~S3583C13(){ note_dtor("S3583C13", this);}
+void  S3583C13 ::v1(){vfunc_called(this, "_ZN8S3583C132v1Ev");}
+S3583C13 ::S3583C13(){ note_ctor("S3583C13", this);} // tgen
+
+static void Test_S3583C13()
+{
+  extern Class_Descriptor cd_S3583C13;
+  void *lvp;
+  {
+    ABISELECT(double,int) buf[18];
+    init_test(&cd_S3583C13, buf);
+    S3583C13 *dp, &lv = *(dp=new (buf) S3583C13());
+    lvp = (void*)&lv;
+    check2(sizeof(lv), ABISELECT(136,68), "sizeof(S3583C13)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S3583C13)");
+    check_base_class_offset(lv, (S3583C4_nt*)(S3583C10*), ABISELECT(40,20), "S3583C13");
+    check_base_class_offset(lv, (S3583C6_nt*)(S3583C10*), ABISELECT(56,28), "S3583C13");
+    check_base_class_offset(lv, (S3583C6_nt*)(S3583C5*)(S3583C3*), ABISELECT(56,28), "S3583C13");
+    /*is_ambiguous_... S3583C13::S3583C5 */ AMB_check_base_class_offset(lv, (S3583C6_nt*)(S3583C5*), ABISELECT(56,28), "S3583C13");
+    check_base_class_offset(lv, (S3583C7*)(S3583C10*), ABISELECT(48,24), "S3583C13");
+    check_base_class_offset(lv, (S3583C10*), ABISELECT(40,20), "S3583C13");
+    check_base_class_offset(lv, (S3583C10*)(S3583C9*), ABISELECT(40,20), "S3583C13");
+    /*is_ambiguous_... S3583C13::S3583C7 */ AMB_check_base_class_offset(lv, (S3583C7*), ABISELECT(72,36), "S3583C13");
+    check_base_class_offset(lv, (S3583C7*)(S3583C5*)(S3583C3*), ABISELECT(72,36), "S3583C13");
+    /*is_ambiguous_... S3583C13::S3583C5 */ AMB_check_base_class_offset(lv, (S3583C7*)(S3583C5*), ABISELECT(72,36), "S3583C13");
+    /*is_ambiguous_... S3583C3::S3583C4_nt */ AMB_check_base_class_offset(lv, (S3583C4_nt*)(S3583C3*), ABISELECT(80,40), "S3583C13");
+    /*is_ambiguous_... S3583C9::S3583C4_nt */ AMB_check_base_class_offset(lv, (S3583C4_nt*)(S3583C9*), ABISELECT(80,40), "S3583C13");
+    check_base_class_offset(lv, (S3583C4_nt*)(S3583C5*)(S3583C3*), 0, "S3583C13");
+    check_base_class_offset(lv, (S3583C5*)(S3583C3*), 0, "S3583C13");
+    check_base_class_offset(lv, (S3583C3*), 0, "S3583C13");
+    /*is_ambiguous_... S3583C13::S3583C6_nt */ AMB_check_base_class_offset(lv, (S3583C6_nt*), ABISELECT(24,12), "S3583C13");
+    /*is_ambiguous_... S3583C9::S3583C7 */ AMB_check_base_class_offset(lv, (S3583C7*)(S3583C9*), ABISELECT(88,44), "S3583C13");
+    /*is_ambiguous_... S3583C9::S3583C6_nt */ AMB_check_base_class_offset(lv, (S3583C6_nt*)(S3583C9*), ABISELECT(96,48), "S3583C13");
+    /*is_ambiguous_... S3583C13::S3583C5 */ AMB_check_base_class_offset(lv, (S3583C4_nt*)(S3583C5*), ABISELECT(120,60), "S3583C13");
+    check_base_class_offset(lv, (S3583C5*)(S3583C9*), ABISELECT(120,60), "S3583C13");
+    check_base_class_offset(lv, (S3583C9*), ABISELECT(88,44), "S3583C13");
+    test_class_info(&lv, &cd_S3583C13);
+    dp->~S3583C13();
+  }
+  Check_Ctor_Dtor_Calls(lvp);
+}
+static Arrange_To_Call_Me vS3583C13(Test_S3583C13, "S3583C13", ABISELECT(136,68));
+
+#else // __cplusplus
+
+extern void _ZN8S3583C13C1Ev();
+extern void _ZN8S3583C13D2Ev();
+Name_Map name_map_S3583C13[] = {
+  NSPAIR(_ZN8S3583C13C1Ev),
+  NSPAIR(_ZN8S3583C13D2Ev),
+  {0,0}
+};
+extern Class_Descriptor cd_S3583C4_nt;
+extern VTBL_ENTRY _ZTI10S3583C4_nt[];
+extern  VTBL_ENTRY _ZTV10S3583C4_nt[];
+extern Class_Descriptor cd_S3583C6_nt;
+extern VTBL_ENTRY _ZTI10S3583C6_nt[];
+extern  VTBL_ENTRY _ZTV10S3583C6_nt[];
+extern Class_Descriptor cd_S3583C7;
+extern VTBL_ENTRY _ZTI7S3583C7[];
+extern  VTBL_ENTRY _ZTV7S3583C7[];
+extern Class_Descriptor cd_S3583C10;
+extern VTBL_ENTRY _ZTI8S3583C10[];
+extern  VTBL_ENTRY _ZTV8S3583C10[];
+extern  VTBL_ENTRY * __attribute__((weak))_ZTT8S3583C10[];
+extern Class_Descriptor cd_S3583C7;
+extern VTBL_ENTRY _ZTI7S3583C7[];
+extern  VTBL_ENTRY _ZTV7S3583C7[];
+extern Class_Descriptor cd_S3583C4_nt;
+extern VTBL_ENTRY _ZTI10S3583C4_nt[];
+extern  VTBL_ENTRY _ZTV10S3583C4_nt[];
+extern Class_Descriptor cd_S3583C4_nt;
+extern VTBL_ENTRY _ZTI10S3583C4_nt[];
+extern  VTBL_ENTRY _ZTV10S3583C4_nt[];
+extern Class_Descriptor cd_S3583C5;
+extern VTBL_ENTRY _ZTI7S3583C5[];
+extern  VTBL_ENTRY _ZTV7S3583C5[];
+extern  VTBL_ENTRY * __attribute__((weak))_ZTT7S3583C5[];
+extern Class_Descriptor cd_S3583C3;
+extern VTBL_ENTRY _ZTI7S3583C3[];
+extern  VTBL_ENTRY _ZTV7S3583C3[];
+extern  VTBL_ENTRY * __attribute__((weak))_ZTT7S3583C3[];
+extern Class_Descriptor cd_S3583C6_nt;
+extern VTBL_ENTRY _ZTI10S3583C6_nt[];
+extern  VTBL_ENTRY _ZTV10S3583C6_nt[];
+extern Class_Descriptor cd_S3583C7;
+extern VTBL_ENTRY _ZTI7S3583C7[];
+extern  VTBL_ENTRY _ZTV7S3583C7[];
+extern Class_Descriptor cd_S3583C6_nt;
+extern VTBL_ENTRY _ZTI10S3583C6_nt[];
+extern  VTBL_ENTRY _ZTV10S3583C6_nt[];
+extern Class_Descriptor cd_S3583C4_nt;
+extern VTBL_ENTRY _ZTI10S3583C4_nt[];
+extern  VTBL_ENTRY _ZTV10S3583C4_nt[];
+extern Class_Descriptor cd_S3583C5;
+extern VTBL_ENTRY _ZTI7S3583C5[];
+extern  VTBL_ENTRY _ZTV7S3583C5[];
+extern  VTBL_ENTRY * __attribute__((weak))_ZTT7S3583C5[];
+extern Class_Descriptor cd_S3583C9;
+extern VTBL_ENTRY _ZTI7S3583C9[];
+extern  VTBL_ENTRY _ZTV7S3583C9[];
+extern  VTBL_ENTRY * __attribute__((weak))_ZTT7S3583C9[];
+static Base_Class bases_S3583C13[] = {
+  // ofst, vfto, nneg, vtt_idx, base_vtt_idx, init_seq, direct, virtual
+  {&cd_S3583C4_nt,    ABISELECT(40,20), //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    2, //init_seq
+    3, //immediately_derived
+  0, 0},
+  {&cd_S3583C6_nt,    ABISELECT(56,28), //bcp->offset
+    25, //bcp->virtual_function_table_offset
+    3, //num_negative_vtable_entries(t, bcp)
+    10, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    1, //init_seq
+    3, //immediately_derived
+  0, 1},
+  {&cd_S3583C7,    ABISELECT(48,24), //bcp->offset
+    21, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    11, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    3, //init_seq
+    3, //immediately_derived
+  0, 0},
+  {&cd_S3583C10,    ABISELECT(40,20), //bcp->offset
+    15, //bcp->virtual_function_table_offset
+    4, //num_negative_vtable_entries(t, bcp)
+    9, //bcp->index_in_construction_vtbl_array
+    17, //bcp->base_subarray_index_in_construction_vtbl_array
+    4, //init_seq
+    -1, //immediately_derived
+  1, 1},
+  {&cd_S3583C7,    ABISELECT(72,36), //bcp->offset
+    30, //bcp->virtual_function_table_offset
+    3, //num_negative_vtable_entries(t, bcp)
+    12, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    5, //init_seq
+    -1, //immediately_derived
+  1, 1},
+  {&cd_S3583C4_nt,    ABISELECT(80,40), //bcp->offset
+    35, //bcp->virtual_function_table_offset
+    3, //num_negative_vtable_entries(t, bcp)
+    13, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    6, //init_seq
+    8, //immediately_derived
+  0, 1},
+  {&cd_S3583C4_nt,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    12, //init_seq
+    7, //immediately_derived
+  0, 0},
+  {&cd_S3583C5,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    4, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    3, //bcp->base_subarray_index_in_construction_vtbl_array
+    13, //init_seq
+    8, //immediately_derived
+  0, 0},
+  {&cd_S3583C3,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    5, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    2, //bcp->base_subarray_index_in_construction_vtbl_array
+    14, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {&cd_S3583C6_nt,    ABISELECT(24,12), //bcp->offset
+    11, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    15, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {&cd_S3583C7,    ABISELECT(88,44), //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    9, //init_seq
+    14, //immediately_derived
+  0, 0},
+  {&cd_S3583C6_nt,    ABISELECT(96,48), //bcp->offset
+    50, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    15, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    10, //init_seq
+    14, //immediately_derived
+  0, 0},
+  {&cd_S3583C4_nt,    ABISELECT(120,60), //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    7, //init_seq
+    13, //immediately_derived
+  0, 0},
+  {&cd_S3583C5,    ABISELECT(120,60), //bcp->offset
+    54, //bcp->virtual_function_table_offset
+    5, //num_negative_vtable_entries(t, bcp)
+    16, //bcp->index_in_construction_vtbl_array
+    26, //bcp->base_subarray_index_in_construction_vtbl_array
+    8, //init_seq
+    14, //immediately_derived
+  0, 1},
+  {&cd_S3583C9,    ABISELECT(88,44), //bcp->offset
+    40, //bcp->virtual_function_table_offset
+    8, //num_negative_vtable_entries(t, bcp)
+    14, //bcp->index_in_construction_vtbl_array
+    19, //bcp->base_subarray_index_in_construction_vtbl_array
+    11, //init_seq
+    -1, //immediately_derived
+  1, 1},
+  {0}};
+extern VTBL_ENTRY _ZTI8S3583C13[];
+extern void _ZN8S3583C13D1Ev();
+extern void _ZN8S3583C13D0Ev();
+extern void _ZN8S3583C132v1Ev();
+extern void ABISELECT(_ZThn24_N8S3583C13D1Ev,_ZThn12_N8S3583C13D1Ev)();
+extern void ABISELECT(_ZThn24_N8S3583C13D0Ev,_ZThn12_N8S3583C13D0Ev)();
+extern void ABISELECT(_ZTv0_n32_N8S3583C13D1Ev,_ZTv0_n16_N8S3583C13D1Ev)();
+extern void ABISELECT(_ZThn40_N8S3583C13D1Ev,_ZThn20_N8S3583C13D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n32_N8S3583C13D0Ev,_ZTv0_n16_N8S3583C13D0Ev)();
+extern void ABISELECT(_ZThn40_N8S3583C13D0Ev,_ZThn20_N8S3583C13D0Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTvn8_n32_N8S3583C13D1Ev,_ZTvn4_n16_N8S3583C13D1Ev)();
+extern void ABISELECT(_ZTvn8_n32_N8S3583C13D0Ev,_ZTvn4_n16_N8S3583C13D0Ev)();
+extern void ABISELECT(_ZTv0_n24_N8S3583C13D1Ev,_ZTv0_n12_N8S3583C13D1Ev)();
+extern void ABISELECT(_ZThn56_N8S3583C13D1Ev,_ZThn28_N8S3583C13D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N8S3583C13D0Ev,_ZTv0_n12_N8S3583C13D0Ev)();
+extern void ABISELECT(_ZThn56_N8S3583C13D0Ev,_ZThn28_N8S3583C13D0Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N8S3583C13D1Ev,_ZTv0_n12_N8S3583C13D1Ev)();
+extern void ABISELECT(_ZThn72_N8S3583C13D1Ev,_ZThn36_N8S3583C13D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N8S3583C13D0Ev,_ZTv0_n12_N8S3583C13D0Ev)();
+extern void ABISELECT(_ZThn72_N8S3583C13D0Ev,_ZThn36_N8S3583C13D0Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N8S3583C13D1Ev,_ZTv0_n12_N8S3583C13D1Ev)();
+extern void ABISELECT(_ZThn80_N8S3583C13D1Ev,_ZThn40_N8S3583C13D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N8S3583C13D0Ev,_ZTv0_n12_N8S3583C13D0Ev)();
+extern void ABISELECT(_ZThn80_N8S3583C13D0Ev,_ZThn40_N8S3583C13D0Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n64_N8S3583C13D1Ev,_ZTv0_n32_N8S3583C13D1Ev)();
+extern void ABISELECT(_ZThn88_N8S3583C13D1Ev,_ZThn44_N8S3583C13D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n64_N8S3583C13D0Ev,_ZTv0_n32_N8S3583C13D0Ev)();
+extern void ABISELECT(_ZThn88_N8S3583C13D0Ev,_ZThn44_N8S3583C13D0Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTvn8_n64_N8S3583C13D1Ev,_ZTvn4_n32_N8S3583C13D1Ev)();
+extern void ABISELECT(_ZTvn8_n64_N8S3583C13D0Ev,_ZTvn4_n32_N8S3583C13D0Ev)();
+extern void ABISELECT(_ZTv0_n40_N8S3583C13D1Ev,_ZTv0_n20_N8S3583C13D1Ev)();
+extern void ABISELECT(_ZThn120_N8S3583C13D1Ev,_ZThn60_N8S3583C13D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n40_N8S3583C13D0Ev,_ZTv0_n20_N8S3583C13D0Ev)();
+extern void ABISELECT(_ZThn120_N8S3583C13D0Ev,_ZThn60_N8S3583C13D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY vtc_S3583C13[] = {
+  ABISELECT(120,60),
+  ABISELECT(88,44),
+  ABISELECT(40,20),
+  ABISELECT(80,40),
+  ABISELECT(72,36),
+  ABISELECT(56,28),
+  0,
+  (VTBL_ENTRY)&(_ZTI8S3583C13[0]),
+  (VTBL_ENTRY)&_ZN8S3583C13D1Ev,
+  (VTBL_ENTRY)&_ZN8S3583C13D0Ev,
+  (VTBL_ENTRY)&_ZN8S3583C132v1Ev,
+  ABISELECT(-24,-12),
+  (VTBL_ENTRY)&(_ZTI8S3583C13[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZThn24_N8S3583C13D1Ev,_ZThn12_N8S3583C13D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZThn24_N8S3583C13D0Ev,_ZThn12_N8S3583C13D0Ev),
+  ABISELECT(-40,-20),
+  ABISELECT(16,8),
+  ABISELECT(-40,-20),
+  (VTBL_ENTRY)&(_ZTI8S3583C13[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n32_N8S3583C13D1Ev,_ZTv0_n16_N8S3583C13D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n32_N8S3583C13D0Ev,_ZTv0_n16_N8S3583C13D0Ev),
+  ABISELECT(-48,-24),
+  (VTBL_ENTRY)&(_ZTI8S3583C13[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTvn8_n32_N8S3583C13D1Ev,_ZTvn4_n16_N8S3583C13D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTvn8_n32_N8S3583C13D0Ev,_ZTvn4_n16_N8S3583C13D0Ev),
+  ABISELECT(-56,-28),
+  ABISELECT(-56,-28),
+  (VTBL_ENTRY)&(_ZTI8S3583C13[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C13D1Ev,_ZTv0_n12_N8S3583C13D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C13D0Ev,_ZTv0_n12_N8S3583C13D0Ev),
+  ABISELECT(-72,-36),
+  ABISELECT(-72,-36),
+  (VTBL_ENTRY)&(_ZTI8S3583C13[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C13D1Ev,_ZTv0_n12_N8S3583C13D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C13D0Ev,_ZTv0_n12_N8S3583C13D0Ev),
+  ABISELECT(-80,-40),
+  ABISELECT(-80,-40),
+  (VTBL_ENTRY)&(_ZTI8S3583C13[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C13D1Ev,_ZTv0_n12_N8S3583C13D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C13D0Ev,_ZTv0_n12_N8S3583C13D0Ev),
+  ABISELECT(-88,-44),
+  ABISELECT(-48,-24),
+  ABISELECT(-16,-8),
+  ABISELECT(-32,-16),
+  ABISELECT(32,16),
+  ABISELECT(-8,-4),
+  ABISELECT(-88,-44),
+  (VTBL_ENTRY)&(_ZTI8S3583C13[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n64_N8S3583C13D1Ev,_ZTv0_n32_N8S3583C13D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n64_N8S3583C13D0Ev,_ZTv0_n32_N8S3583C13D0Ev),
+  ABISELECT(-96,-48),
+  (VTBL_ENTRY)&(_ZTI8S3583C13[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTvn8_n64_N8S3583C13D1Ev,_ZTvn4_n32_N8S3583C13D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTvn8_n64_N8S3583C13D0Ev,_ZTvn4_n32_N8S3583C13D0Ev),
+  ABISELECT(-120,-60),
+  ABISELECT(-48,-24),
+  ABISELECT(-64,-32),
+  ABISELECT(-120,-60),
+  (VTBL_ENTRY)&(_ZTI8S3583C13[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n40_N8S3583C13D1Ev,_ZTv0_n20_N8S3583C13D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n40_N8S3583C13D0Ev,_ZTv0_n20_N8S3583C13D0Ev),
+};
+extern VTBL_ENTRY _ZTV8S3583C13[];
+extern void _ZN7S3583C3D1Ev();
+extern void _ZN7S3583C3D0Ev();
+static  VTBL_ENTRY _tg__ZTV7S3583C3__8S3583C13[] = {
+  ABISELECT(80,40),
+  ABISELECT(72,36),
+  ABISELECT(56,28),
+  0,
+  (VTBL_ENTRY)&(_ZTI7S3583C3[0]),
+  (VTBL_ENTRY)&_ZN7S3583C3D1Ev,
+  (VTBL_ENTRY)&_ZN7S3583C3D0Ev,
+};
+extern void _ZN7S3583C5D1Ev();
+extern void _ZN7S3583C5D0Ev();
+static  VTBL_ENTRY _tg__ZTV7S3583C57S3583C3__8S3583C13[] = {
+  ABISELECT(72,36),
+  ABISELECT(56,28),
+  0,
+  (VTBL_ENTRY)&(_ZTI7S3583C5[0]),
+  (VTBL_ENTRY)&_ZN7S3583C5D1Ev,
+  (VTBL_ENTRY)&_ZN7S3583C5D0Ev,
+};
+extern void ABISELECT(_ZTv0_n24_N7S3583C5D1Ev,_ZTv0_n12_N7S3583C5D1Ev)();
+extern void ABISELECT(_ZThn56_N7S3583C5D1Ev,_ZThn28_N7S3583C5D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N7S3583C5D0Ev,_ZTv0_n12_N7S3583C5D0Ev)();
+extern void ABISELECT(_ZThn56_N7S3583C5D0Ev,_ZThn28_N7S3583C5D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV10S3583C6_nt__7S3583C57S3583C3__8S3583C13[] = {
+  ABISELECT(-56,-28),
+  ABISELECT(-56,-28),
+  (VTBL_ENTRY)&(_ZTI7S3583C5[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C5D1Ev,_ZTv0_n12_N7S3583C5D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C5D0Ev,_ZTv0_n12_N7S3583C5D0Ev),
+};
+extern void ABISELECT(_ZTv0_n24_N7S3583C5D1Ev,_ZTv0_n12_N7S3583C5D1Ev)();
+extern void ABISELECT(_ZThn72_N7S3583C5D1Ev,_ZThn36_N7S3583C5D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N7S3583C5D0Ev,_ZTv0_n12_N7S3583C5D0Ev)();
+extern void ABISELECT(_ZThn72_N7S3583C5D0Ev,_ZThn36_N7S3583C5D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV7S3583C7__7S3583C57S3583C3__8S3583C13[] = {
+  ABISELECT(-72,-36),
+  ABISELECT(-72,-36),
+  (VTBL_ENTRY)&(_ZTI7S3583C5[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C5D1Ev,_ZTv0_n12_N7S3583C5D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C5D0Ev,_ZTv0_n12_N7S3583C5D0Ev),
+};
+extern void ABISELECT(_ZTv0_n24_N7S3583C3D1Ev,_ZTv0_n12_N7S3583C3D1Ev)();
+extern void ABISELECT(_ZThn80_N7S3583C3D1Ev,_ZThn40_N7S3583C3D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N7S3583C3D0Ev,_ZTv0_n12_N7S3583C3D0Ev)();
+extern void ABISELECT(_ZThn80_N7S3583C3D0Ev,_ZThn40_N7S3583C3D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV10S3583C4_nt__7S3583C3__8S3583C13[] = {
+  ABISELECT(-80,-40),
+  ABISELECT(-80,-40),
+  (VTBL_ENTRY)&(_ZTI7S3583C3[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C3D1Ev,_ZTv0_n12_N7S3583C3D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C3D0Ev,_ZTv0_n12_N7S3583C3D0Ev),
+};
+extern void ABISELECT(_ZTv0_n24_N7S3583C3D1Ev,_ZTv0_n12_N7S3583C3D1Ev)();
+extern void ABISELECT(_ZThn56_N7S3583C3D1Ev,_ZThn28_N7S3583C3D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N7S3583C3D0Ev,_ZTv0_n12_N7S3583C3D0Ev)();
+extern void ABISELECT(_ZThn56_N7S3583C3D0Ev,_ZThn28_N7S3583C3D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV10S3583C6_nt__7S3583C3__8S3583C13[] = {
+  ABISELECT(-56,-28),
+  ABISELECT(-56,-28),
+  (VTBL_ENTRY)&(_ZTI7S3583C3[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C3D1Ev,_ZTv0_n12_N7S3583C3D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C3D0Ev,_ZTv0_n12_N7S3583C3D0Ev),
+};
+extern void ABISELECT(_ZTv0_n24_N7S3583C3D1Ev,_ZTv0_n12_N7S3583C3D1Ev)();
+extern void ABISELECT(_ZThn72_N7S3583C3D1Ev,_ZThn36_N7S3583C3D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N7S3583C3D0Ev,_ZTv0_n12_N7S3583C3D0Ev)();
+extern void ABISELECT(_ZThn72_N7S3583C3D0Ev,_ZThn36_N7S3583C3D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV7S3583C7__7S3583C3__8S3583C13[] = {
+  ABISELECT(-72,-36),
+  ABISELECT(-72,-36),
+  (VTBL_ENTRY)&(_ZTI7S3583C3[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C3D1Ev,_ZTv0_n12_N7S3583C3D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C3D0Ev,_ZTv0_n12_N7S3583C3D0Ev),
+};
+extern void _ZN8S3583C10D1Ev();
+extern void _ZN8S3583C10D0Ev();
+static  VTBL_ENTRY _tg__ZTV8S3583C10__8S3583C13[] = {
+  ABISELECT(16,8),
+  0,
+  (VTBL_ENTRY)&(_ZTI8S3583C10[0]),
+  (VTBL_ENTRY)&_ZN8S3583C10D1Ev,
+  (VTBL_ENTRY)&_ZN8S3583C10D0Ev,
+};
+extern void ABISELECT(_ZTv0_n24_N8S3583C10D1Ev,_ZTv0_n12_N8S3583C10D1Ev)();
+extern void ABISELECT(_ZThn16_N8S3583C10D1Ev,_ZThn8_N8S3583C10D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N8S3583C10D0Ev,_ZTv0_n12_N8S3583C10D0Ev)();
+extern void ABISELECT(_ZThn16_N8S3583C10D0Ev,_ZThn8_N8S3583C10D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV10S3583C6_nt__8S3583C10__8S3583C13[] = {
+  ABISELECT(-16,-8),
+  ABISELECT(-16,-8),
+  (VTBL_ENTRY)&(_ZTI8S3583C10[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C10D1Ev,_ZTv0_n12_N8S3583C10D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C10D0Ev,_ZTv0_n12_N8S3583C10D0Ev),
+};
+extern void _ZN7S3583C9D1Ev();
+extern void _ZN7S3583C9D0Ev();
+static  VTBL_ENTRY _tg__ZTV7S3583C9__8S3583C13[] = {
+  ABISELECT(-48,-24),
+  ABISELECT(-16,-8),
+  ABISELECT(-32,-16),
+  ABISELECT(32,16),
+  ABISELECT(-8,-4),
+  0,
+  (VTBL_ENTRY)&(_ZTI7S3583C9[0]),
+  (VTBL_ENTRY)&_ZN7S3583C9D1Ev,
+  (VTBL_ENTRY)&_ZN7S3583C9D0Ev,
+};
+extern void ABISELECT(_ZTv0_n24_N7S3583C9D1Ev,_ZTv0_n12_N7S3583C9D1Ev)();
+extern void ABISELECT(_ZTv0_n24_N7S3583C9D0Ev,_ZTv0_n12_N7S3583C9D0Ev)();
+static  VTBL_ENTRY _tg__ZTV10S3583C4_nt__7S3583C9__8S3583C13[] = {
+  ABISELECT(8,4),
+  ABISELECT(8,4),
+  (VTBL_ENTRY)&(_ZTI7S3583C9[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C9D1Ev,_ZTv0_n12_N7S3583C9D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C9D0Ev,_ZTv0_n12_N7S3583C9D0Ev),
+};
+extern void ABISELECT(_ZTv0_n40_N7S3583C9D1Ev,_ZTv0_n20_N7S3583C9D1Ev)();
+extern void ABISELECT(_ZThn32_N7S3583C9D1Ev,_ZThn16_N7S3583C9D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n40_N7S3583C9D0Ev,_ZTv0_n20_N7S3583C9D0Ev)();
+extern void ABISELECT(_ZThn32_N7S3583C9D0Ev,_ZThn16_N7S3583C9D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV7S3583C5__7S3583C9__8S3583C13[] = {
+  ABISELECT(-32,-16),
+  ABISELECT(-48,-24),
+  ABISELECT(-64,-32),
+  ABISELECT(-32,-16),
+  (VTBL_ENTRY)&(_ZTI7S3583C9[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n40_N7S3583C9D1Ev,_ZTv0_n20_N7S3583C9D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n40_N7S3583C9D0Ev,_ZTv0_n20_N7S3583C9D0Ev),
+};
+extern void ABISELECT(_ZTv0_n24_N7S3583C9D1Ev,_ZTv0_n12_N7S3583C9D1Ev)();
+extern void ABISELECT(_ZTv0_n24_N7S3583C9D0Ev,_ZTv0_n12_N7S3583C9D0Ev)();
+static  VTBL_ENTRY _tg__ZTV10S3583C6_nt__A1__7S3583C9__8S3583C13[] = {
+  ABISELECT(32,16),
+  ABISELECT(32,16),
+  (VTBL_ENTRY)&(_ZTI7S3583C9[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C9D1Ev,_ZTv0_n12_N7S3583C9D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C9D0Ev,_ZTv0_n12_N7S3583C9D0Ev),
+};
+extern void ABISELECT(_ZTv0_n24_N7S3583C9D1Ev,_ZTv0_n12_N7S3583C9D1Ev)();
+extern void ABISELECT(_ZTv0_n24_N7S3583C9D0Ev,_ZTv0_n12_N7S3583C9D0Ev)();
+static  VTBL_ENTRY _tg__ZTV7S3583C7__A1__7S3583C9__8S3583C13[] = {
+  ABISELECT(16,8),
+  ABISELECT(16,8),
+  (VTBL_ENTRY)&(_ZTI7S3583C9[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C9D1Ev,_ZTv0_n12_N7S3583C9D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C9D0Ev,_ZTv0_n12_N7S3583C9D0Ev),
+};
+extern void ABISELECT(_ZTv0_n32_N7S3583C9D1Ev,_ZTv0_n16_N7S3583C9D1Ev)();
+extern void ABISELECT(_ZTv0_n32_N7S3583C9D0Ev,_ZTv0_n16_N7S3583C9D0Ev)();
+static  VTBL_ENTRY _tg__ZTV8S3583C10__7S3583C9__8S3583C13[] = {
+  ABISELECT(48,24),
+  ABISELECT(16,8),
+  ABISELECT(48,24),
+  (VTBL_ENTRY)&(_ZTI7S3583C9[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n32_N7S3583C9D1Ev,_ZTv0_n16_N7S3583C9D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n32_N7S3583C9D0Ev,_ZTv0_n16_N7S3583C9D0Ev),
+};
+extern void ABISELECT(_ZTvn8_n32_N7S3583C9D1Ev,_ZTvn4_n16_N7S3583C9D1Ev)();
+extern void ABISELECT(_ZTvn8_n32_N7S3583C9D0Ev,_ZTvn4_n16_N7S3583C9D0Ev)();
+static  VTBL_ENTRY _tg__ZTV7S3583C78S3583C10__A2__7S3583C9__8S3583C13[] = {
+  ABISELECT(40,20),
+  (VTBL_ENTRY)&(_ZTI7S3583C9[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTvn8_n32_N7S3583C9D1Ev,_ZTvn4_n16_N7S3583C9D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTvn8_n32_N7S3583C9D0Ev,_ZTvn4_n16_N7S3583C9D0Ev),
+};
+extern void _ZN7S3583C5D1Ev();
+extern void _ZN7S3583C5D0Ev();
+static  VTBL_ENTRY _tg__ZTV7S3583C5__A1__8S3583C13[] = {
+  ABISELECT(-48,-24),
+  ABISELECT(-64,-32),
+  0,
+  (VTBL_ENTRY)&(_ZTI7S3583C5[0]),
+  (VTBL_ENTRY)&_ZN7S3583C5D1Ev,
+  (VTBL_ENTRY)&_ZN7S3583C5D0Ev,
+};
+extern void ABISELECT(_ZTv0_n24_N7S3583C5D1Ev,_ZTv0_n12_N7S3583C5D1Ev)();
+extern void ABISELECT(_ZTv0_n24_N7S3583C5D0Ev,_ZTv0_n12_N7S3583C5D0Ev)();
+static  VTBL_ENTRY _tg__ZTV10S3583C6_nt__7S3583C5__A1__8S3583C13[] = {
+  ABISELECT(64,32),
+  ABISELECT(64,32),
+  (VTBL_ENTRY)&(_ZTI7S3583C5[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C5D1Ev,_ZTv0_n12_N7S3583C5D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C5D0Ev,_ZTv0_n12_N7S3583C5D0Ev),
+};
+extern void ABISELECT(_ZTv0_n24_N7S3583C5D1Ev,_ZTv0_n12_N7S3583C5D1Ev)();
+extern void ABISELECT(_ZTv0_n24_N7S3583C5D0Ev,_ZTv0_n12_N7S3583C5D0Ev)();
+static  VTBL_ENTRY _tg__ZTV7S3583C7__7S3583C5__A1__8S3583C13[] = {
+  ABISELECT(48,24),
+  ABISELECT(48,24),
+  (VTBL_ENTRY)&(_ZTI7S3583C5[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C5D1Ev,_ZTv0_n12_N7S3583C5D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C5D0Ev,_ZTv0_n12_N7S3583C5D0Ev),
+};
+static  VTT_ENTRY vtt_S3583C13[] = {
+  {&(_ZTV8S3583C13[8]),  8,61},
+  {&(_tg__ZTV7S3583C3__8S3583C13[5]),  5,7},
+  {&(_tg__ZTV7S3583C57S3583C3__8S3583C13[4]),  4,6},
+  {&(_tg__ZTV10S3583C6_nt__7S3583C57S3583C3__8S3583C13[3]),  3,5},
+  {&(_tg__ZTV7S3583C7__7S3583C57S3583C3__8S3583C13[3]),  3,5},
+  {&(_tg__ZTV10S3583C4_nt__7S3583C3__8S3583C13[3]),  3,5},
+  {&(_tg__ZTV10S3583C6_nt__7S3583C3__8S3583C13[3]),  3,5},
+  {&(_tg__ZTV7S3583C7__7S3583C3__8S3583C13[3]),  3,5},
+  {&(_ZTV8S3583C13[19]),  19,61},
+  {&(_ZTV8S3583C13[28]),  28,61},
+  {&(_ZTV8S3583C13[23]),  23,61},
+  {&(_ZTV8S3583C13[33]),  33,61},
+  {&(_ZTV8S3583C13[38]),  38,61},
+  {&(_ZTV8S3583C13[48]),  48,61},
+  {&(_ZTV8S3583C13[52]),  52,61},
+  {&(_ZTV8S3583C13[59]),  59,61},
+  {&(_tg__ZTV8S3583C10__8S3583C13[3]),  3,5},
+  {&(_tg__ZTV10S3583C6_nt__8S3583C10__8S3583C13[3]),  3,5},
+  {&(_tg__ZTV7S3583C9__8S3583C13[7]),  7,9},
+  {&(_tg__ZTV10S3583C4_nt__7S3583C9__8S3583C13[3]),  3,5},
+  {&(_tg__ZTV7S3583C5__7S3583C9__8S3583C13[5]),  5,7},
+  {&(_tg__ZTV10S3583C6_nt__A1__7S3583C9__8S3583C13[3]),  3,5},
+  {&(_tg__ZTV7S3583C7__A1__7S3583C9__8S3583C13[3]),  3,5},
+  {&(_tg__ZTV8S3583C10__7S3583C9__8S3583C13[4]),  4,6},
+  {&(_tg__ZTV7S3583C78S3583C10__A2__7S3583C9__8S3583C13[2]),  2,4},
+  {&(_tg__ZTV7S3583C5__A1__8S3583C13[4]),  4,6},
+  {&(_tg__ZTV10S3583C6_nt__7S3583C5__A1__8S3583C13[3]),  3,5},
+  {&(_tg__ZTV7S3583C7__7S3583C5__A1__8S3583C13[3]),  3,5},
+};
+extern VTBL_ENTRY _ZTI8S3583C13[];
+extern  VTBL_ENTRY _ZTV8S3583C13[];
+extern  VTBL_ENTRY * __attribute__((weak))_ZTT8S3583C13[];
+static VTBL_ENTRY alt_thunk_names7[] = {
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n40_N7S3583C9D0Ev,_ZTv0_n20_N7S3583C9D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn32_N7S3583C9D0Ev,_ZThn16_N7S3583C9D0Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n40_N7S3583C9D1Ev,_ZTv0_n20_N7S3583C9D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn32_N7S3583C9D1Ev,_ZThn16_N7S3583C9D1Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n24_N8S3583C10D0Ev,_ZTv0_n12_N8S3583C10D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn16_N8S3583C10D0Ev,_ZThn8_N8S3583C10D0Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n24_N8S3583C10D1Ev,_ZTv0_n12_N8S3583C10D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn16_N8S3583C10D1Ev,_ZThn8_N8S3583C10D1Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n24_N7S3583C3D0Ev,_ZTv0_n12_N7S3583C3D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn72_N7S3583C3D0Ev,_ZThn36_N7S3583C3D0Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn56_N7S3583C3D0Ev,_ZThn28_N7S3583C3D0Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn80_N7S3583C3D0Ev,_ZThn40_N7S3583C3D0Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n24_N7S3583C3D1Ev,_ZTv0_n12_N7S3583C3D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn72_N7S3583C3D1Ev,_ZThn36_N7S3583C3D1Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn56_N7S3583C3D1Ev,_ZThn28_N7S3583C3D1Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn80_N7S3583C3D1Ev,_ZThn40_N7S3583C3D1Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n24_N7S3583C5D0Ev,_ZTv0_n12_N7S3583C5D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn72_N7S3583C5D0Ev,_ZThn36_N7S3583C5D0Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn56_N7S3583C5D0Ev,_ZThn28_N7S3583C5D0Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n24_N7S3583C5D1Ev,_ZTv0_n12_N7S3583C5D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn72_N7S3583C5D1Ev,_ZThn36_N7S3583C5D1Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn56_N7S3583C5D1Ev,_ZThn28_N7S3583C5D1Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n40_N8S3583C13D0Ev,_ZTv0_n20_N8S3583C13D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn120_N8S3583C13D0Ev,_ZThn60_N8S3583C13D0Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n40_N8S3583C13D1Ev,_ZTv0_n20_N8S3583C13D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn120_N8S3583C13D1Ev,_ZThn60_N8S3583C13D1Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n64_N8S3583C13D0Ev,_ZTv0_n32_N8S3583C13D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn88_N8S3583C13D0Ev,_ZThn44_N8S3583C13D0Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n64_N8S3583C13D1Ev,_ZTv0_n32_N8S3583C13D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn88_N8S3583C13D1Ev,_ZThn44_N8S3583C13D1Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n24_N8S3583C13D0Ev,_ZTv0_n12_N8S3583C13D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn80_N8S3583C13D0Ev,_ZThn40_N8S3583C13D0Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn72_N8S3583C13D0Ev,_ZThn36_N8S3583C13D0Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn56_N8S3583C13D0Ev,_ZThn28_N8S3583C13D0Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n24_N8S3583C13D1Ev,_ZTv0_n12_N8S3583C13D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn80_N8S3583C13D1Ev,_ZThn40_N8S3583C13D1Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn72_N8S3583C13D1Ev,_ZThn36_N8S3583C13D1Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn56_N8S3583C13D1Ev,_ZThn28_N8S3583C13D1Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n32_N8S3583C13D0Ev,_ZTv0_n16_N8S3583C13D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn40_N8S3583C13D0Ev,_ZThn20_N8S3583C13D0Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n32_N8S3583C13D1Ev,_ZTv0_n16_N8S3583C13D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn40_N8S3583C13D1Ev,_ZThn20_N8S3583C13D1Ev),
+  ALT_NAMES_TERMINATOR,
+ALT_NAMES_TERMINATOR};
+Class_Descriptor cd_S3583C13 = {  "S3583C13", // class name
+  bases_S3583C13, 15,
+  &(vtc_S3583C13[0]), // expected_vtbl_contents
+  &(vtt_S3583C13[0]), // expected_vtt_contents
+  ABISELECT(136,68), // object size
+  NSPAIRA(_ZTI8S3583C13),ABISELECT(104,56), //typeinfo_var
+  NSPAIRA(_ZTV8S3583C13),61, //virtual function table var
+  8, // offset into main vftv pointed to by object[0]
+  NSPAIRA(_ZTT8S3583C13),28, //virtual table table var
+  15, // n_initialized_bases
+  1, // has_virtual_bases
+  0, // has_class_type_fields
+  alt_thunk_names7,
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S3583C12  : virtual S3583C13 , S3583C7 , S3583C9 {
+  int s3583c12f0;
+  ~S3583C12(); // tgen
+  S3583C12(); // tgen
+};
+//SIG(-1 S3583C12) C1{ VBC2{ VBC3{ BC4{ vd m} VBC5{ vd m Fi} BC6{ vd m} vd} VBC6 BC7{ VBC4 BC8{ VBC5 BC4 VBC6 vd Fi} vd Fp} BC5 VBC9{ VBC4 BC6 BC5 VBC8 VBC3 vd Fp} vd v1} BC6 BC9 Fi}
+
+
+S3583C12 ::~S3583C12(){ note_dtor("S3583C12", this);} // tgen
+S3583C12 ::S3583C12(){ note_ctor("S3583C12", this);} // tgen
+
+static void Test_S3583C12()
+{
+  extern Class_Descriptor cd_S3583C12;
+  void *lvp;
+  {
+    ABISELECT(double,int) buf[24];
+    init_test(&cd_S3583C12, buf);
+    S3583C12 *dp, &lv = *(dp=new (buf) S3583C12());
+    lvp = (void*)&lv;
+    check2(sizeof(lv), ABISELECT(184,92), "sizeof(S3583C12)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S3583C12)");
+    check_base_class_offset(lv, (S3583C4_nt*)(S3583C10*), ABISELECT(88,44), "S3583C12");
+    check_base_class_offset(lv, (S3583C6_nt*)(S3583C10*), ABISELECT(104,52), "S3583C12");
+    check_base_class_offset(lv, (S3583C6_nt*)(S3583C5*)(S3583C3*)(S3583C13*), ABISELECT(104,52), "S3583C12");
+    /*is_ambiguous_... S3583C12::S3583C5 */ AMB_check_base_class_offset(lv, (S3583C6_nt*)(S3583C5*), ABISELECT(104,52), "S3583C12");
+    check_base_class_offset(lv, (S3583C7*)(S3583C10*), ABISELECT(96,48), "S3583C12");
+    check_base_class_offset(lv, (S3583C10*)(S3583C13*), ABISELECT(88,44), "S3583C12");
+    /*is_ambiguous_... S3583C12::S3583C9 */ AMB_check_base_class_offset(lv, (S3583C10*)(S3583C9*), ABISELECT(88,44), "S3583C12");
+    /*is_ambiguous_... S3583C12::S3583C9 */ AMB_check_base_class_offset(lv, (S3583C10*)(S3583C9*), ABISELECT(88,44), "S3583C12");
+    /*is_ambiguous_... S3583C13::S3583C7 */ AMB_check_base_class_offset(lv, (S3583C7*)(S3583C13*), ABISELECT(120,60), "S3583C12");
+    check_base_class_offset(lv, (S3583C7*)(S3583C5*)(S3583C3*)(S3583C13*), ABISELECT(120,60), "S3583C12");
+    /*is_ambiguous_... S3583C12::S3583C5 */ AMB_check_base_class_offset(lv, (S3583C7*)(S3583C5*), ABISELECT(120,60), "S3583C12");
+    /*is_ambiguous_... S3583C3::S3583C4_nt */ AMB_check_base_class_offset(lv, (S3583C4_nt*)(S3583C3*)(S3583C13*), ABISELECT(128,64), "S3583C12");
+    /*is_ambiguous_... S3583C12::S3583C9 */ AMB_check_base_class_offset(lv, (S3583C4_nt*)(S3583C9*), ABISELECT(128,64), "S3583C12");
+    /*is_ambiguous_... S3583C12::S3583C9 */ AMB_check_base_class_offset(lv, (S3583C4_nt*)(S3583C9*), ABISELECT(128,64), "S3583C12");
+    check_base_class_offset(lv, (S3583C4_nt*)(S3583C5*)(S3583C3*)(S3583C13*), ABISELECT(48,24), "S3583C12");
+    check_base_class_offset(lv, (S3583C5*)(S3583C3*)(S3583C13*), ABISELECT(48,24), "S3583C12");
+    check_base_class_offset(lv, (S3583C3*)(S3583C13*), ABISELECT(48,24), "S3583C12");
+    /*is_ambiguous_... S3583C13::S3583C6_nt */ AMB_check_base_class_offset(lv, (S3583C6_nt*)(S3583C13*), ABISELECT(72,36), "S3583C12");
+    /*is_ambiguous_... S3583C12::S3583C9 */ AMB_check_base_class_offset(lv, (S3583C7*)(S3583C9*), ABISELECT(136,68), "S3583C12");
+    /*is_ambiguous_... S3583C12::S3583C9 */ AMB_check_base_class_offset(lv, (S3583C6_nt*)(S3583C9*), ABISELECT(144,72), "S3583C12");
+    /*is_ambiguous_... S3583C12::S3583C5 */ AMB_check_base_class_offset(lv, (S3583C4_nt*)(S3583C5*), ABISELECT(168,84), "S3583C12");
+    /*is_ambiguous_... S3583C12::S3583C9 */ AMB_check_base_class_offset(lv, (S3583C5*)(S3583C9*), ABISELECT(168,84), "S3583C12");
+    /*is_ambiguous_... S3583C12::S3583C9 */ AMB_check_base_class_offset(lv, (S3583C5*)(S3583C9*), ABISELECT(168,84), "S3583C12");
+    check_base_class_offset(lv, (S3583C9*)(S3583C13*), ABISELECT(136,68), "S3583C12");
+    check_base_class_offset(lv, (S3583C13*), ABISELECT(48,24), "S3583C12");
+    /*is_ambiguous_... S3583C12::S3583C7 */ AMB_check_base_class_offset(lv, (S3583C7*), 0, "S3583C12");
+    /*is_ambiguous_... S3583C12::S3583C9 */ AMB_check_base_class_offset(lv, (S3583C7*)(S3583C9*), ABISELECT(8,4), "S3583C12");
+    /*is_ambiguous_... S3583C12::S3583C9 */ AMB_check_base_class_offset(lv, (S3583C6_nt*)(S3583C9*), ABISELECT(16,8), "S3583C12");
+    /*is_ambiguous_... S3583C12::S3583C9 */ AMB_check_base_class_offset(lv, (S3583C9*), ABISELECT(8,4), "S3583C12");
+    check_field_offset(lv, s3583c12f0, ABISELECT(40,20), "S3583C12.s3583c12f0");
+    test_class_info(&lv, &cd_S3583C12);
+    dp->~S3583C12();
+  }
+  Check_Ctor_Dtor_Calls(lvp);
+}
+static Arrange_To_Call_Me vS3583C12(Test_S3583C12, "S3583C12", ABISELECT(184,92));
+
+#else // __cplusplus
+
+extern void _ZN8S3583C12C1Ev();
+extern void _ZN8S3583C12D1Ev();
+Name_Map name_map_S3583C12[] = {
+  NSPAIR(_ZN8S3583C12C1Ev),
+  NSPAIR(_ZN8S3583C12D1Ev),
+  {0,0}
+};
+extern Class_Descriptor cd_S3583C4_nt;
+extern VTBL_ENTRY _ZTI10S3583C4_nt[];
+extern  VTBL_ENTRY _ZTV10S3583C4_nt[];
+extern Class_Descriptor cd_S3583C6_nt;
+extern VTBL_ENTRY _ZTI10S3583C6_nt[];
+extern  VTBL_ENTRY _ZTV10S3583C6_nt[];
+extern Class_Descriptor cd_S3583C7;
+extern VTBL_ENTRY _ZTI7S3583C7[];
+extern  VTBL_ENTRY _ZTV7S3583C7[];
+extern Class_Descriptor cd_S3583C10;
+extern VTBL_ENTRY _ZTI8S3583C10[];
+extern  VTBL_ENTRY _ZTV8S3583C10[];
+extern  VTBL_ENTRY * __attribute__((weak))_ZTT8S3583C10[];
+extern Class_Descriptor cd_S3583C7;
+extern VTBL_ENTRY _ZTI7S3583C7[];
+extern  VTBL_ENTRY _ZTV7S3583C7[];
+extern Class_Descriptor cd_S3583C4_nt;
+extern VTBL_ENTRY _ZTI10S3583C4_nt[];
+extern  VTBL_ENTRY _ZTV10S3583C4_nt[];
+extern Class_Descriptor cd_S3583C4_nt;
+extern VTBL_ENTRY _ZTI10S3583C4_nt[];
+extern  VTBL_ENTRY _ZTV10S3583C4_nt[];
+extern Class_Descriptor cd_S3583C5;
+extern VTBL_ENTRY _ZTI7S3583C5[];
+extern  VTBL_ENTRY _ZTV7S3583C5[];
+extern  VTBL_ENTRY * __attribute__((weak))_ZTT7S3583C5[];
+extern Class_Descriptor cd_S3583C3;
+extern VTBL_ENTRY _ZTI7S3583C3[];
+extern  VTBL_ENTRY _ZTV7S3583C3[];
+extern  VTBL_ENTRY * __attribute__((weak))_ZTT7S3583C3[];
+extern Class_Descriptor cd_S3583C6_nt;
+extern VTBL_ENTRY _ZTI10S3583C6_nt[];
+extern  VTBL_ENTRY _ZTV10S3583C6_nt[];
+extern Class_Descriptor cd_S3583C7;
+extern VTBL_ENTRY _ZTI7S3583C7[];
+extern  VTBL_ENTRY _ZTV7S3583C7[];
+extern Class_Descriptor cd_S3583C6_nt;
+extern VTBL_ENTRY _ZTI10S3583C6_nt[];
+extern  VTBL_ENTRY _ZTV10S3583C6_nt[];
+extern Class_Descriptor cd_S3583C4_nt;
+extern VTBL_ENTRY _ZTI10S3583C4_nt[];
+extern  VTBL_ENTRY _ZTV10S3583C4_nt[];
+extern Class_Descriptor cd_S3583C5;
+extern VTBL_ENTRY _ZTI7S3583C5[];
+extern  VTBL_ENTRY _ZTV7S3583C5[];
+extern  VTBL_ENTRY * __attribute__((weak))_ZTT7S3583C5[];
+extern Class_Descriptor cd_S3583C9;
+extern VTBL_ENTRY _ZTI7S3583C9[];
+extern  VTBL_ENTRY _ZTV7S3583C9[];
+extern  VTBL_ENTRY * __attribute__((weak))_ZTT7S3583C9[];
+extern Class_Descriptor cd_S3583C13;
+extern VTBL_ENTRY _ZTI8S3583C13[];
+extern  VTBL_ENTRY _ZTV8S3583C13[];
+extern  VTBL_ENTRY * __attribute__((weak))_ZTT8S3583C13[];
+extern Class_Descriptor cd_S3583C7;
+extern VTBL_ENTRY _ZTI7S3583C7[];
+extern  VTBL_ENTRY _ZTV7S3583C7[];
+extern Class_Descriptor cd_S3583C7;
+extern VTBL_ENTRY _ZTI7S3583C7[];
+extern  VTBL_ENTRY _ZTV7S3583C7[];
+extern Class_Descriptor cd_S3583C6_nt;
+extern VTBL_ENTRY _ZTI10S3583C6_nt[];
+extern  VTBL_ENTRY _ZTV10S3583C6_nt[];
+extern Class_Descriptor cd_S3583C9;
+extern VTBL_ENTRY _ZTI7S3583C9[];
+extern  VTBL_ENTRY _ZTV7S3583C9[];
+extern  VTBL_ENTRY * __attribute__((weak))_ZTT7S3583C9[];
+static Base_Class bases_S3583C12[] = {
+  // ofst, vfto, nneg, vtt_idx, base_vtt_idx, init_seq, direct, virtual
+  {&cd_S3583C4_nt,    ABISELECT(88,44), //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    2, //init_seq
+    3, //immediately_derived
+  0, 0},
+  {&cd_S3583C6_nt,    ABISELECT(104,52), //bcp->offset
+    51, //bcp->virtual_function_table_offset
+    3, //num_negative_vtable_entries(t, bcp)
+    11, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    1, //init_seq
+    3, //immediately_derived
+  0, 1},
+  {&cd_S3583C7,    ABISELECT(96,48), //bcp->offset
+    47, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    12, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    3, //init_seq
+    3, //immediately_derived
+  0, 0},
+  {&cd_S3583C10,    ABISELECT(88,44), //bcp->offset
+    41, //bcp->virtual_function_table_offset
+    4, //num_negative_vtable_entries(t, bcp)
+    10, //bcp->index_in_construction_vtbl_array
+    36, //bcp->base_subarray_index_in_construction_vtbl_array
+    4, //init_seq
+    14, //immediately_derived
+  0, 1},
+  {&cd_S3583C7,    ABISELECT(120,60), //bcp->offset
+    56, //bcp->virtual_function_table_offset
+    3, //num_negative_vtable_entries(t, bcp)
+    13, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    5, //init_seq
+    7, //immediately_derived
+  0, 1},
+  {&cd_S3583C4_nt,    ABISELECT(128,64), //bcp->offset
+    61, //bcp->virtual_function_table_offset
+    3, //num_negative_vtable_entries(t, bcp)
+    14, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    6, //init_seq
+    8, //immediately_derived
+  0, 1},
+  {&cd_S3583C4_nt,    ABISELECT(48,24), //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    12, //init_seq
+    7, //immediately_derived
+  0, 0},
+  {&cd_S3583C5,    ABISELECT(48,24), //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    4, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    22, //bcp->base_subarray_index_in_construction_vtbl_array
+    13, //init_seq
+    8, //immediately_derived
+  0, 0},
+  {&cd_S3583C3,    ABISELECT(48,24), //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    5, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    21, //bcp->base_subarray_index_in_construction_vtbl_array
+    14, //init_seq
+    15, //immediately_derived
+  0, 0},
+  {&cd_S3583C6_nt,    ABISELECT(72,36), //bcp->offset
+    37, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    15, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    15, //init_seq
+    15, //immediately_derived
+  0, 0},
+  {&cd_S3583C7,    ABISELECT(136,68), //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    9, //init_seq
+    14, //immediately_derived
+  0, 0},
+  {&cd_S3583C6_nt,    ABISELECT(144,72), //bcp->offset
+    76, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    17, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    10, //init_seq
+    14, //immediately_derived
+  0, 0},
+  {&cd_S3583C4_nt,    ABISELECT(168,84), //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    7, //init_seq
+    13, //immediately_derived
+  0, 0},
+  {&cd_S3583C5,    ABISELECT(168,84), //bcp->offset
+    80, //bcp->virtual_function_table_offset
+    5, //num_negative_vtable_entries(t, bcp)
+    18, //bcp->index_in_construction_vtbl_array
+    45, //bcp->base_subarray_index_in_construction_vtbl_array
+    8, //init_seq
+    14, //immediately_derived
+  0, 1},
+  {&cd_S3583C9,    ABISELECT(136,68), //bcp->offset
+    66, //bcp->virtual_function_table_offset
+    8, //num_negative_vtable_entries(t, bcp)
+    16, //bcp->index_in_construction_vtbl_array
+    38, //bcp->base_subarray_index_in_construction_vtbl_array
+    11, //init_seq
+    15, //immediately_derived
+  0, 1},
+  {&cd_S3583C13,    ABISELECT(48,24), //bcp->offset
+    24, //bcp->virtual_function_table_offset
+    10, //num_negative_vtable_entries(t, bcp)
+    9, //bcp->index_in_construction_vtbl_array
+    20, //bcp->base_subarray_index_in_construction_vtbl_array
+    16, //init_seq
+    -1, //immediately_derived
+  1, 1},
+  {&cd_S3583C7,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    17, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {&cd_S3583C7,    ABISELECT(8,4), //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    18, //init_seq
+    19, //immediately_derived
+  0, 0},
+  {&cd_S3583C6_nt,    ABISELECT(16,8), //bcp->offset
+    20, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    19, //init_seq
+    19, //immediately_derived
+  0, 0},
+  {&cd_S3583C9,    ABISELECT(8,4), //bcp->offset
+    11, //bcp->virtual_function_table_offset
+    7, //num_negative_vtable_entries(t, bcp)
+    19, //bcp->index_in_construction_vtbl_array
+    2, //bcp->base_subarray_index_in_construction_vtbl_array
+    20, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {0}};
+extern VTBL_ENTRY _ZTI8S3583C12[];
+extern void _ZN8S3583C12D1Ev();
+extern void _ZN8S3583C12D0Ev();
+extern void ABISELECT(_ZThn8_N8S3583C12D1Ev,_ZThn4_N8S3583C12D1Ev)();
+extern void ABISELECT(_ZThn8_N8S3583C12D0Ev,_ZThn4_N8S3583C12D0Ev)();
+extern void ABISELECT(_ZThn16_N8S3583C12D1Ev,_ZThn8_N8S3583C12D1Ev)();
+extern void ABISELECT(_ZThn16_N8S3583C12D0Ev,_ZThn8_N8S3583C12D0Ev)();
+extern void ABISELECT(_ZTv0_n72_N8S3583C12D1Ev,_ZTv0_n36_N8S3583C12D1Ev)();
+extern void ABISELECT(_ZThn48_N8S3583C12D1Ev,_ZThn24_N8S3583C12D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n72_N8S3583C12D0Ev,_ZTv0_n36_N8S3583C12D0Ev)();
+extern void ABISELECT(_ZThn48_N8S3583C12D0Ev,_ZThn24_N8S3583C12D0Ev)() __attribute__((weak));
+extern void _ZN8S3583C132v1Ev();
+extern void ABISELECT(_ZTvn24_n72_N8S3583C12D1Ev,_ZTvn12_n36_N8S3583C12D1Ev)();
+extern void ABISELECT(_ZTvn24_n72_N8S3583C12D0Ev,_ZTvn12_n36_N8S3583C12D0Ev)();
+extern void ABISELECT(_ZTv0_n32_N8S3583C12D1Ev,_ZTv0_n16_N8S3583C12D1Ev)();
+extern void ABISELECT(_ZThn88_N8S3583C12D1Ev,_ZThn44_N8S3583C12D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n32_N8S3583C12D0Ev,_ZTv0_n16_N8S3583C12D0Ev)();
+extern void ABISELECT(_ZThn88_N8S3583C12D0Ev,_ZThn44_N8S3583C12D0Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTvn8_n32_N8S3583C12D1Ev,_ZTvn4_n16_N8S3583C12D1Ev)();
+extern void ABISELECT(_ZTvn8_n32_N8S3583C12D0Ev,_ZTvn4_n16_N8S3583C12D0Ev)();
+extern void ABISELECT(_ZTv0_n24_N8S3583C12D1Ev,_ZTv0_n12_N8S3583C12D1Ev)();
+extern void ABISELECT(_ZThn104_N8S3583C12D1Ev,_ZThn52_N8S3583C12D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N8S3583C12D0Ev,_ZTv0_n12_N8S3583C12D0Ev)();
+extern void ABISELECT(_ZThn104_N8S3583C12D0Ev,_ZThn52_N8S3583C12D0Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N8S3583C12D1Ev,_ZTv0_n12_N8S3583C12D1Ev)();
+extern void ABISELECT(_ZThn120_N8S3583C12D1Ev,_ZThn60_N8S3583C12D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N8S3583C12D0Ev,_ZTv0_n12_N8S3583C12D0Ev)();
+extern void ABISELECT(_ZThn120_N8S3583C12D0Ev,_ZThn60_N8S3583C12D0Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N8S3583C12D1Ev,_ZTv0_n12_N8S3583C12D1Ev)();
+extern void ABISELECT(_ZThn128_N8S3583C12D1Ev,_ZThn64_N8S3583C12D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N8S3583C12D0Ev,_ZTv0_n12_N8S3583C12D0Ev)();
+extern void ABISELECT(_ZThn128_N8S3583C12D0Ev,_ZThn64_N8S3583C12D0Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n64_N8S3583C12D1Ev,_ZTv0_n32_N8S3583C12D1Ev)();
+extern void ABISELECT(_ZThn136_N8S3583C12D1Ev,_ZThn68_N8S3583C12D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n64_N8S3583C12D0Ev,_ZTv0_n32_N8S3583C12D0Ev)();
+extern void ABISELECT(_ZThn136_N8S3583C12D0Ev,_ZThn68_N8S3583C12D0Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTvn8_n64_N8S3583C12D1Ev,_ZTvn4_n32_N8S3583C12D1Ev)();
+extern void ABISELECT(_ZTvn8_n64_N8S3583C12D0Ev,_ZTvn4_n32_N8S3583C12D0Ev)();
+extern void ABISELECT(_ZTv0_n40_N8S3583C12D1Ev,_ZTv0_n20_N8S3583C12D1Ev)();
+extern void ABISELECT(_ZThn168_N8S3583C12D1Ev,_ZThn84_N8S3583C12D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n40_N8S3583C12D0Ev,_ZTv0_n20_N8S3583C12D0Ev)();
+extern void ABISELECT(_ZThn168_N8S3583C12D0Ev,_ZThn84_N8S3583C12D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY vtc_S3583C12[] = {
+  ABISELECT(168,84),
+  ABISELECT(136,68),
+  ABISELECT(128,64),
+  ABISELECT(120,60),
+  ABISELECT(104,52),
+  ABISELECT(88,44),
+  ABISELECT(48,24),
+  0,
+  (VTBL_ENTRY)&(_ZTI8S3583C12[0]),
+  (VTBL_ENTRY)&_ZN8S3583C12D1Ev,
+  (VTBL_ENTRY)&_ZN8S3583C12D0Ev,
+  ABISELECT(80,40),
+  ABISELECT(112,56),
+  ABISELECT(96,48),
+  ABISELECT(160,80),
+  ABISELECT(120,60),
+  ABISELECT(-8,-4),
+  (VTBL_ENTRY)&(_ZTI8S3583C12[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZThn8_N8S3583C12D1Ev,_ZThn4_N8S3583C12D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZThn8_N8S3583C12D0Ev,_ZThn4_N8S3583C12D0Ev),
+  ABISELECT(-16,-8),
+  (VTBL_ENTRY)&(_ZTI8S3583C12[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZThn16_N8S3583C12D1Ev,_ZThn8_N8S3583C12D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZThn16_N8S3583C12D0Ev,_ZThn8_N8S3583C12D0Ev),
+  0,
+  ABISELECT(-48,-24),
+  ABISELECT(120,60),
+  ABISELECT(88,44),
+  ABISELECT(40,20),
+  ABISELECT(80,40),
+  ABISELECT(72,36),
+  ABISELECT(56,28),
+  ABISELECT(-48,-24),
+  (VTBL_ENTRY)&(_ZTI8S3583C12[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n72_N8S3583C12D1Ev,_ZTv0_n36_N8S3583C12D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n72_N8S3583C12D0Ev,_ZTv0_n36_N8S3583C12D0Ev),
+  (VTBL_ENTRY)&_ZN8S3583C132v1Ev,
+  ABISELECT(-72,-36),
+  (VTBL_ENTRY)&(_ZTI8S3583C12[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTvn24_n72_N8S3583C12D1Ev,_ZTvn12_n36_N8S3583C12D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTvn24_n72_N8S3583C12D0Ev,_ZTvn12_n36_N8S3583C12D0Ev),
+  ABISELECT(-88,-44),
+  ABISELECT(16,8),
+  ABISELECT(-88,-44),
+  (VTBL_ENTRY)&(_ZTI8S3583C12[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n32_N8S3583C12D1Ev,_ZTv0_n16_N8S3583C12D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n32_N8S3583C12D0Ev,_ZTv0_n16_N8S3583C12D0Ev),
+  ABISELECT(-96,-48),
+  (VTBL_ENTRY)&(_ZTI8S3583C12[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTvn8_n32_N8S3583C12D1Ev,_ZTvn4_n16_N8S3583C12D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTvn8_n32_N8S3583C12D0Ev,_ZTvn4_n16_N8S3583C12D0Ev),
+  ABISELECT(-104,-52),
+  ABISELECT(-104,-52),
+  (VTBL_ENTRY)&(_ZTI8S3583C12[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C12D1Ev,_ZTv0_n12_N8S3583C12D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C12D0Ev,_ZTv0_n12_N8S3583C12D0Ev),
+  ABISELECT(-120,-60),
+  ABISELECT(-120,-60),
+  (VTBL_ENTRY)&(_ZTI8S3583C12[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C12D1Ev,_ZTv0_n12_N8S3583C12D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C12D0Ev,_ZTv0_n12_N8S3583C12D0Ev),
+  ABISELECT(-128,-64),
+  ABISELECT(-128,-64),
+  (VTBL_ENTRY)&(_ZTI8S3583C12[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C12D1Ev,_ZTv0_n12_N8S3583C12D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C12D0Ev,_ZTv0_n12_N8S3583C12D0Ev),
+  ABISELECT(-136,-68),
+  ABISELECT(-48,-24),
+  ABISELECT(-16,-8),
+  ABISELECT(-32,-16),
+  ABISELECT(32,16),
+  ABISELECT(-8,-4),
+  ABISELECT(-136,-68),
+  (VTBL_ENTRY)&(_ZTI8S3583C12[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n64_N8S3583C12D1Ev,_ZTv0_n32_N8S3583C12D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n64_N8S3583C12D0Ev,_ZTv0_n32_N8S3583C12D0Ev),
+  ABISELECT(-144,-72),
+  (VTBL_ENTRY)&(_ZTI8S3583C12[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTvn8_n64_N8S3583C12D1Ev,_ZTvn4_n32_N8S3583C12D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTvn8_n64_N8S3583C12D0Ev,_ZTvn4_n32_N8S3583C12D0Ev),
+  ABISELECT(-168,-84),
+  ABISELECT(-48,-24),
+  ABISELECT(-64,-32),
+  ABISELECT(-168,-84),
+  (VTBL_ENTRY)&(_ZTI8S3583C12[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n40_N8S3583C12D1Ev,_ZTv0_n20_N8S3583C12D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n40_N8S3583C12D0Ev,_ZTv0_n20_N8S3583C12D0Ev),
+};
+extern VTBL_ENTRY _ZTV8S3583C12[];
+extern void _ZN7S3583C9D1Ev();
+extern void _ZN7S3583C9D0Ev();
+static  VTBL_ENTRY _tg__ZTV7S3583C9__A__8S3583C12[] = {
+  ABISELECT(80,40),
+  ABISELECT(112,56),
+  ABISELECT(96,48),
+  ABISELECT(160,80),
+  ABISELECT(120,60),
+  0,
+  (VTBL_ENTRY)&(_ZTI7S3583C9[0]),
+  (VTBL_ENTRY)&_ZN7S3583C9D1Ev,
+  (VTBL_ENTRY)&_ZN7S3583C9D0Ev,
+};
+extern void ABISELECT(_ZTv0_n24_N7S3583C9D1Ev,_ZTv0_n12_N7S3583C9D1Ev)();
+extern void ABISELECT(_ZThn120_N7S3583C9D1Ev,_ZThn60_N7S3583C9D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N7S3583C9D0Ev,_ZTv0_n12_N7S3583C9D0Ev)();
+extern void ABISELECT(_ZThn120_N7S3583C9D0Ev,_ZThn60_N7S3583C9D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV10S3583C4_nt__7S3583C9__A__8S3583C12[] = {
+  ABISELECT(-120,-60),
+  ABISELECT(-120,-60),
+  (VTBL_ENTRY)&(_ZTI7S3583C9[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C9D1Ev,_ZTv0_n12_N7S3583C9D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C9D0Ev,_ZTv0_n12_N7S3583C9D0Ev),
+};
+extern void ABISELECT(_ZTv0_n40_N7S3583C9D1Ev,_ZTv0_n20_N7S3583C9D1Ev)();
+extern void ABISELECT(_ZThn160_N7S3583C9D1Ev,_ZThn80_N7S3583C9D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n40_N7S3583C9D0Ev,_ZTv0_n20_N7S3583C9D0Ev)();
+extern void ABISELECT(_ZThn160_N7S3583C9D0Ev,_ZThn80_N7S3583C9D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV7S3583C5__7S3583C9__A__8S3583C12[] = {
+  ABISELECT(-160,-80),
+  ABISELECT(-48,-24),
+  ABISELECT(-64,-32),
+  ABISELECT(-160,-80),
+  (VTBL_ENTRY)&(_ZTI7S3583C9[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n40_N7S3583C9D1Ev,_ZTv0_n20_N7S3583C9D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n40_N7S3583C9D0Ev,_ZTv0_n20_N7S3583C9D0Ev),
+};
+extern void ABISELECT(_ZTv0_n24_N7S3583C9D1Ev,_ZTv0_n12_N7S3583C9D1Ev)();
+extern void ABISELECT(_ZThn96_N7S3583C9D1Ev,_ZThn48_N7S3583C9D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N7S3583C9D0Ev,_ZTv0_n12_N7S3583C9D0Ev)();
+extern void ABISELECT(_ZThn96_N7S3583C9D0Ev,_ZThn48_N7S3583C9D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV10S3583C6_nt__A1__7S3583C9__A__8S3583C12[] = {
+  ABISELECT(-96,-48),
+  ABISELECT(-96,-48),
+  (VTBL_ENTRY)&(_ZTI7S3583C9[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C9D1Ev,_ZTv0_n12_N7S3583C9D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C9D0Ev,_ZTv0_n12_N7S3583C9D0Ev),
+};
+extern void ABISELECT(_ZTv0_n24_N7S3583C9D1Ev,_ZTv0_n12_N7S3583C9D1Ev)();
+extern void ABISELECT(_ZThn112_N7S3583C9D1Ev,_ZThn56_N7S3583C9D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N7S3583C9D0Ev,_ZTv0_n12_N7S3583C9D0Ev)();
+extern void ABISELECT(_ZThn112_N7S3583C9D0Ev,_ZThn56_N7S3583C9D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV7S3583C7__A1__7S3583C9__A__8S3583C12[] = {
+  ABISELECT(-112,-56),
+  ABISELECT(-112,-56),
+  (VTBL_ENTRY)&(_ZTI7S3583C9[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C9D1Ev,_ZTv0_n12_N7S3583C9D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C9D0Ev,_ZTv0_n12_N7S3583C9D0Ev),
+};
+extern void ABISELECT(_ZTv0_n32_N7S3583C9D1Ev,_ZTv0_n16_N7S3583C9D1Ev)();
+extern void ABISELECT(_ZThn80_N7S3583C9D1Ev,_ZThn40_N7S3583C9D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n32_N7S3583C9D0Ev,_ZTv0_n16_N7S3583C9D0Ev)();
+extern void ABISELECT(_ZThn80_N7S3583C9D0Ev,_ZThn40_N7S3583C9D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV8S3583C10__7S3583C9__A__8S3583C12[] = {
+  ABISELECT(-80,-40),
+  ABISELECT(16,8),
+  ABISELECT(-80,-40),
+  (VTBL_ENTRY)&(_ZTI7S3583C9[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n32_N7S3583C9D1Ev,_ZTv0_n16_N7S3583C9D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n32_N7S3583C9D0Ev,_ZTv0_n16_N7S3583C9D0Ev),
+};
+extern void ABISELECT(_ZTvn8_n32_N7S3583C9D1Ev,_ZTvn4_n16_N7S3583C9D1Ev)();
+extern void ABISELECT(_ZTvn8_n32_N7S3583C9D0Ev,_ZTvn4_n16_N7S3583C9D0Ev)();
+static  VTBL_ENTRY _tg__ZTV7S3583C78S3583C10__A2__7S3583C9__A__8S3583C12[] = {
+  ABISELECT(-88,-44),
+  (VTBL_ENTRY)&(_ZTI7S3583C9[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTvn8_n32_N7S3583C9D1Ev,_ZTvn4_n16_N7S3583C9D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTvn8_n32_N7S3583C9D0Ev,_ZTvn4_n16_N7S3583C9D0Ev),
+};
+extern void _ZN8S3583C13D1Ev();
+extern void _ZN8S3583C13D0Ev();
+extern void _ZN8S3583C132v1Ev();
+static  VTBL_ENTRY _tg__ZTV8S3583C13__8S3583C12[] = {
+  ABISELECT(120,60),
+  ABISELECT(88,44),
+  ABISELECT(40,20),
+  ABISELECT(80,40),
+  ABISELECT(72,36),
+  ABISELECT(56,28),
+  0,
+  (VTBL_ENTRY)&(_ZTI8S3583C13[0]),
+  (VTBL_ENTRY)&_ZN8S3583C13D1Ev,
+  (VTBL_ENTRY)&_ZN8S3583C13D0Ev,
+  (VTBL_ENTRY)&_ZN8S3583C132v1Ev,
+};
+extern void _ZN7S3583C3D1Ev();
+extern void _ZN7S3583C3D0Ev();
+static  VTBL_ENTRY _tg__ZTV7S3583C38S3583C13__8S3583C12[] = {
+  ABISELECT(80,40),
+  ABISELECT(72,36),
+  ABISELECT(56,28),
+  0,
+  (VTBL_ENTRY)&(_ZTI7S3583C3[0]),
+  (VTBL_ENTRY)&_ZN7S3583C3D1Ev,
+  (VTBL_ENTRY)&_ZN7S3583C3D0Ev,
+};
+extern void _ZN7S3583C5D1Ev();
+extern void _ZN7S3583C5D0Ev();
+static  VTBL_ENTRY _tg__ZTV7S3583C57S3583C38S3583C13__8S3583C12[] = {
+  ABISELECT(72,36),
+  ABISELECT(56,28),
+  0,
+  (VTBL_ENTRY)&(_ZTI7S3583C5[0]),
+  (VTBL_ENTRY)&_ZN7S3583C5D1Ev,
+  (VTBL_ENTRY)&_ZN7S3583C5D0Ev,
+};
+extern void ABISELECT(_ZTv0_n24_N7S3583C5D1Ev,_ZTv0_n12_N7S3583C5D1Ev)();
+extern void ABISELECT(_ZThn56_N7S3583C5D1Ev,_ZThn28_N7S3583C5D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N7S3583C5D0Ev,_ZTv0_n12_N7S3583C5D0Ev)();
+extern void ABISELECT(_ZThn56_N7S3583C5D0Ev,_ZThn28_N7S3583C5D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV10S3583C6_nt__7S3583C57S3583C38S3583C13__8S3583C12[] = {
+  ABISELECT(-56,-28),
+  ABISELECT(-56,-28),
+  (VTBL_ENTRY)&(_ZTI7S3583C5[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C5D1Ev,_ZTv0_n12_N7S3583C5D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C5D0Ev,_ZTv0_n12_N7S3583C5D0Ev),
+};
+extern void ABISELECT(_ZTv0_n24_N7S3583C5D1Ev,_ZTv0_n12_N7S3583C5D1Ev)();
+extern void ABISELECT(_ZThn72_N7S3583C5D1Ev,_ZThn36_N7S3583C5D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N7S3583C5D0Ev,_ZTv0_n12_N7S3583C5D0Ev)();
+extern void ABISELECT(_ZThn72_N7S3583C5D0Ev,_ZThn36_N7S3583C5D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV7S3583C7__7S3583C57S3583C38S3583C13__8S3583C12[] = {
+  ABISELECT(-72,-36),
+  ABISELECT(-72,-36),
+  (VTBL_ENTRY)&(_ZTI7S3583C5[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C5D1Ev,_ZTv0_n12_N7S3583C5D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C5D0Ev,_ZTv0_n12_N7S3583C5D0Ev),
+};
+extern void ABISELECT(_ZTv0_n24_N7S3583C3D1Ev,_ZTv0_n12_N7S3583C3D1Ev)();
+extern void ABISELECT(_ZThn80_N7S3583C3D1Ev,_ZThn40_N7S3583C3D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N7S3583C3D0Ev,_ZTv0_n12_N7S3583C3D0Ev)();
+extern void ABISELECT(_ZThn80_N7S3583C3D0Ev,_ZThn40_N7S3583C3D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV10S3583C4_nt__7S3583C38S3583C13__8S3583C12[] = {
+  ABISELECT(-80,-40),
+  ABISELECT(-80,-40),
+  (VTBL_ENTRY)&(_ZTI7S3583C3[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C3D1Ev,_ZTv0_n12_N7S3583C3D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C3D0Ev,_ZTv0_n12_N7S3583C3D0Ev),
+};
+extern void ABISELECT(_ZTv0_n24_N7S3583C3D1Ev,_ZTv0_n12_N7S3583C3D1Ev)();
+extern void ABISELECT(_ZThn56_N7S3583C3D1Ev,_ZThn28_N7S3583C3D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N7S3583C3D0Ev,_ZTv0_n12_N7S3583C3D0Ev)();
+extern void ABISELECT(_ZThn56_N7S3583C3D0Ev,_ZThn28_N7S3583C3D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV10S3583C6_nt__7S3583C38S3583C13__8S3583C12[] = {
+  ABISELECT(-56,-28),
+  ABISELECT(-56,-28),
+  (VTBL_ENTRY)&(_ZTI7S3583C3[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C3D1Ev,_ZTv0_n12_N7S3583C3D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C3D0Ev,_ZTv0_n12_N7S3583C3D0Ev),
+};
+extern void ABISELECT(_ZTv0_n24_N7S3583C3D1Ev,_ZTv0_n12_N7S3583C3D1Ev)();
+extern void ABISELECT(_ZThn72_N7S3583C3D1Ev,_ZThn36_N7S3583C3D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N7S3583C3D0Ev,_ZTv0_n12_N7S3583C3D0Ev)();
+extern void ABISELECT(_ZThn72_N7S3583C3D0Ev,_ZThn36_N7S3583C3D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV7S3583C7__7S3583C38S3583C13__8S3583C12[] = {
+  ABISELECT(-72,-36),
+  ABISELECT(-72,-36),
+  (VTBL_ENTRY)&(_ZTI7S3583C3[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C3D1Ev,_ZTv0_n12_N7S3583C3D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C3D0Ev,_ZTv0_n12_N7S3583C3D0Ev),
+};
+extern void ABISELECT(_ZTv0_n32_N8S3583C13D1Ev,_ZTv0_n16_N8S3583C13D1Ev)();
+extern void ABISELECT(_ZThn40_N8S3583C13D1Ev,_ZThn20_N8S3583C13D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n32_N8S3583C13D0Ev,_ZTv0_n16_N8S3583C13D0Ev)();
+extern void ABISELECT(_ZThn40_N8S3583C13D0Ev,_ZThn20_N8S3583C13D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV8S3583C10__8S3583C13__8S3583C12[] = {
+  ABISELECT(-40,-20),
+  ABISELECT(16,8),
+  ABISELECT(-40,-20),
+  (VTBL_ENTRY)&(_ZTI8S3583C13[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n32_N8S3583C13D1Ev,_ZTv0_n16_N8S3583C13D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n32_N8S3583C13D0Ev,_ZTv0_n16_N8S3583C13D0Ev),
+};
+extern void ABISELECT(_ZTv0_n24_N8S3583C13D1Ev,_ZTv0_n12_N8S3583C13D1Ev)();
+extern void ABISELECT(_ZThn56_N8S3583C13D1Ev,_ZThn28_N8S3583C13D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N8S3583C13D0Ev,_ZTv0_n12_N8S3583C13D0Ev)();
+extern void ABISELECT(_ZThn56_N8S3583C13D0Ev,_ZThn28_N8S3583C13D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV10S3583C6_nt__8S3583C13__8S3583C12[] = {
+  ABISELECT(-56,-28),
+  ABISELECT(-56,-28),
+  (VTBL_ENTRY)&(_ZTI8S3583C13[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C13D1Ev,_ZTv0_n12_N8S3583C13D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C13D0Ev,_ZTv0_n12_N8S3583C13D0Ev),
+};
+extern void ABISELECT(_ZTvn8_n32_N8S3583C13D1Ev,_ZTvn4_n16_N8S3583C13D1Ev)();
+extern void ABISELECT(_ZTvn8_n32_N8S3583C13D0Ev,_ZTvn4_n16_N8S3583C13D0Ev)();
+static  VTBL_ENTRY _tg__ZTV7S3583C78S3583C10__8S3583C13__8S3583C12[] = {
+  ABISELECT(-48,-24),
+  (VTBL_ENTRY)&(_ZTI8S3583C13[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTvn8_n32_N8S3583C13D1Ev,_ZTvn4_n16_N8S3583C13D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTvn8_n32_N8S3583C13D0Ev,_ZTvn4_n16_N8S3583C13D0Ev),
+};
+extern void ABISELECT(_ZTv0_n24_N8S3583C13D1Ev,_ZTv0_n12_N8S3583C13D1Ev)();
+extern void ABISELECT(_ZThn72_N8S3583C13D1Ev,_ZThn36_N8S3583C13D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N8S3583C13D0Ev,_ZTv0_n12_N8S3583C13D0Ev)();
+extern void ABISELECT(_ZThn72_N8S3583C13D0Ev,_ZThn36_N8S3583C13D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV7S3583C7__A1__8S3583C13__8S3583C12[] = {
+  ABISELECT(-72,-36),
+  ABISELECT(-72,-36),
+  (VTBL_ENTRY)&(_ZTI8S3583C13[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C13D1Ev,_ZTv0_n12_N8S3583C13D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C13D0Ev,_ZTv0_n12_N8S3583C13D0Ev),
+};
+extern void ABISELECT(_ZTv0_n24_N8S3583C13D1Ev,_ZTv0_n12_N8S3583C13D1Ev)();
+extern void ABISELECT(_ZThn80_N8S3583C13D1Ev,_ZThn40_N8S3583C13D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N8S3583C13D0Ev,_ZTv0_n12_N8S3583C13D0Ev)();
+extern void ABISELECT(_ZThn80_N8S3583C13D0Ev,_ZThn40_N8S3583C13D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV10S3583C4_nt__A1__8S3583C13__8S3583C12[] = {
+  ABISELECT(-80,-40),
+  ABISELECT(-80,-40),
+  (VTBL_ENTRY)&(_ZTI8S3583C13[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C13D1Ev,_ZTv0_n12_N8S3583C13D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C13D0Ev,_ZTv0_n12_N8S3583C13D0Ev),
+};
+extern void ABISELECT(_ZTv0_n64_N8S3583C13D1Ev,_ZTv0_n32_N8S3583C13D1Ev)();
+extern void ABISELECT(_ZThn88_N8S3583C13D1Ev,_ZThn44_N8S3583C13D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n64_N8S3583C13D0Ev,_ZTv0_n32_N8S3583C13D0Ev)();
+extern void ABISELECT(_ZThn88_N8S3583C13D0Ev,_ZThn44_N8S3583C13D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV7S3583C9__8S3583C13__8S3583C12[] = {
+  ABISELECT(-88,-44),
+  ABISELECT(-48,-24),
+  ABISELECT(-16,-8),
+  ABISELECT(-32,-16),
+  ABISELECT(32,16),
+  ABISELECT(-8,-4),
+  ABISELECT(-88,-44),
+  (VTBL_ENTRY)&(_ZTI8S3583C13[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n64_N8S3583C13D1Ev,_ZTv0_n32_N8S3583C13D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n64_N8S3583C13D0Ev,_ZTv0_n32_N8S3583C13D0Ev),
+};
+extern void ABISELECT(_ZTvn8_n64_N8S3583C13D1Ev,_ZTvn4_n32_N8S3583C13D1Ev)();
+extern void ABISELECT(_ZTvn8_n64_N8S3583C13D0Ev,_ZTvn4_n32_N8S3583C13D0Ev)();
+static  VTBL_ENTRY _tg__ZTV10S3583C6_nt7S3583C9__A2__8S3583C13__8S3583C12[] = {
+  ABISELECT(-96,-48),
+  (VTBL_ENTRY)&(_ZTI8S3583C13[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTvn8_n64_N8S3583C13D1Ev,_ZTvn4_n32_N8S3583C13D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTvn8_n64_N8S3583C13D0Ev,_ZTvn4_n32_N8S3583C13D0Ev),
+};
+extern void ABISELECT(_ZTv0_n40_N8S3583C13D1Ev,_ZTv0_n20_N8S3583C13D1Ev)();
+extern void ABISELECT(_ZThn120_N8S3583C13D1Ev,_ZThn60_N8S3583C13D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n40_N8S3583C13D0Ev,_ZTv0_n20_N8S3583C13D0Ev)();
+extern void ABISELECT(_ZThn120_N8S3583C13D0Ev,_ZThn60_N8S3583C13D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV7S3583C5__A1__8S3583C13__8S3583C12[] = {
+  ABISELECT(-120,-60),
+  ABISELECT(-48,-24),
+  ABISELECT(-64,-32),
+  ABISELECT(-120,-60),
+  (VTBL_ENTRY)&(_ZTI8S3583C13[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n40_N8S3583C13D1Ev,_ZTv0_n20_N8S3583C13D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n40_N8S3583C13D0Ev,_ZTv0_n20_N8S3583C13D0Ev),
+};
+extern void _ZN8S3583C10D1Ev();
+extern void _ZN8S3583C10D0Ev();
+static  VTBL_ENTRY _tg__ZTV8S3583C10__8S3583C12[] = {
+  ABISELECT(16,8),
+  0,
+  (VTBL_ENTRY)&(_ZTI8S3583C10[0]),
+  (VTBL_ENTRY)&_ZN8S3583C10D1Ev,
+  (VTBL_ENTRY)&_ZN8S3583C10D0Ev,
+};
+extern void ABISELECT(_ZTv0_n24_N8S3583C10D1Ev,_ZTv0_n12_N8S3583C10D1Ev)();
+extern void ABISELECT(_ZThn16_N8S3583C10D1Ev,_ZThn8_N8S3583C10D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N8S3583C10D0Ev,_ZTv0_n12_N8S3583C10D0Ev)();
+extern void ABISELECT(_ZThn16_N8S3583C10D0Ev,_ZThn8_N8S3583C10D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV10S3583C6_nt__8S3583C10__8S3583C12[] = {
+  ABISELECT(-16,-8),
+  ABISELECT(-16,-8),
+  (VTBL_ENTRY)&(_ZTI8S3583C10[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C10D1Ev,_ZTv0_n12_N8S3583C10D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C10D0Ev,_ZTv0_n12_N8S3583C10D0Ev),
+};
+extern void _ZN7S3583C9D1Ev();
+extern void _ZN7S3583C9D0Ev();
+static  VTBL_ENTRY _tg__ZTV7S3583C9__8S3583C12[] = {
+  ABISELECT(-48,-24),
+  ABISELECT(-16,-8),
+  ABISELECT(-32,-16),
+  ABISELECT(32,16),
+  ABISELECT(-8,-4),
+  0,
+  (VTBL_ENTRY)&(_ZTI7S3583C9[0]),
+  (VTBL_ENTRY)&_ZN7S3583C9D1Ev,
+  (VTBL_ENTRY)&_ZN7S3583C9D0Ev,
+};
+extern void ABISELECT(_ZTv0_n24_N7S3583C9D1Ev,_ZTv0_n12_N7S3583C9D1Ev)();
+extern void ABISELECT(_ZTv0_n24_N7S3583C9D0Ev,_ZTv0_n12_N7S3583C9D0Ev)();
+static  VTBL_ENTRY _tg__ZTV10S3583C4_nt__7S3583C9__8S3583C12[] = {
+  ABISELECT(8,4),
+  ABISELECT(8,4),
+  (VTBL_ENTRY)&(_ZTI7S3583C9[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C9D1Ev,_ZTv0_n12_N7S3583C9D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C9D0Ev,_ZTv0_n12_N7S3583C9D0Ev),
+};
+extern void ABISELECT(_ZTv0_n40_N7S3583C9D1Ev,_ZTv0_n20_N7S3583C9D1Ev)();
+extern void ABISELECT(_ZThn32_N7S3583C9D1Ev,_ZThn16_N7S3583C9D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n40_N7S3583C9D0Ev,_ZTv0_n20_N7S3583C9D0Ev)();
+extern void ABISELECT(_ZThn32_N7S3583C9D0Ev,_ZThn16_N7S3583C9D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV7S3583C5__7S3583C9__8S3583C12[] = {
+  ABISELECT(-32,-16),
+  ABISELECT(-48,-24),
+  ABISELECT(-64,-32),
+  ABISELECT(-32,-16),
+  (VTBL_ENTRY)&(_ZTI7S3583C9[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n40_N7S3583C9D1Ev,_ZTv0_n20_N7S3583C9D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n40_N7S3583C9D0Ev,_ZTv0_n20_N7S3583C9D0Ev),
+};
+extern void ABISELECT(_ZTv0_n24_N7S3583C9D1Ev,_ZTv0_n12_N7S3583C9D1Ev)();
+extern void ABISELECT(_ZTv0_n24_N7S3583C9D0Ev,_ZTv0_n12_N7S3583C9D0Ev)();
+static  VTBL_ENTRY _tg__ZTV10S3583C6_nt__A1__7S3583C9__8S3583C12[] = {
+  ABISELECT(32,16),
+  ABISELECT(32,16),
+  (VTBL_ENTRY)&(_ZTI7S3583C9[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C9D1Ev,_ZTv0_n12_N7S3583C9D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C9D0Ev,_ZTv0_n12_N7S3583C9D0Ev),
+};
+extern void ABISELECT(_ZTv0_n24_N7S3583C9D1Ev,_ZTv0_n12_N7S3583C9D1Ev)();
+extern void ABISELECT(_ZTv0_n24_N7S3583C9D0Ev,_ZTv0_n12_N7S3583C9D0Ev)();
+static  VTBL_ENTRY _tg__ZTV7S3583C7__A1__7S3583C9__8S3583C12[] = {
+  ABISELECT(16,8),
+  ABISELECT(16,8),
+  (VTBL_ENTRY)&(_ZTI7S3583C9[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C9D1Ev,_ZTv0_n12_N7S3583C9D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C9D0Ev,_ZTv0_n12_N7S3583C9D0Ev),
+};
+extern void ABISELECT(_ZTv0_n32_N7S3583C9D1Ev,_ZTv0_n16_N7S3583C9D1Ev)();
+extern void ABISELECT(_ZTv0_n32_N7S3583C9D0Ev,_ZTv0_n16_N7S3583C9D0Ev)();
+static  VTBL_ENTRY _tg__ZTV8S3583C10__7S3583C9__8S3583C12[] = {
+  ABISELECT(48,24),
+  ABISELECT(16,8),
+  ABISELECT(48,24),
+  (VTBL_ENTRY)&(_ZTI7S3583C9[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n32_N7S3583C9D1Ev,_ZTv0_n16_N7S3583C9D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n32_N7S3583C9D0Ev,_ZTv0_n16_N7S3583C9D0Ev),
+};
+extern void ABISELECT(_ZTvn8_n32_N7S3583C9D1Ev,_ZTvn4_n16_N7S3583C9D1Ev)();
+extern void ABISELECT(_ZTvn8_n32_N7S3583C9D0Ev,_ZTvn4_n16_N7S3583C9D0Ev)();
+static  VTBL_ENTRY _tg__ZTV7S3583C78S3583C10__A2__7S3583C9__8S3583C12[] = {
+  ABISELECT(40,20),
+  (VTBL_ENTRY)&(_ZTI7S3583C9[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTvn8_n32_N7S3583C9D1Ev,_ZTvn4_n16_N7S3583C9D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTvn8_n32_N7S3583C9D0Ev,_ZTvn4_n16_N7S3583C9D0Ev),
+};
+extern void _ZN7S3583C5D1Ev();
+extern void _ZN7S3583C5D0Ev();
+static  VTBL_ENTRY _tg__ZTV7S3583C5__A1__8S3583C12[] = {
+  ABISELECT(-48,-24),
+  ABISELECT(-64,-32),
+  0,
+  (VTBL_ENTRY)&(_ZTI7S3583C5[0]),
+  (VTBL_ENTRY)&_ZN7S3583C5D1Ev,
+  (VTBL_ENTRY)&_ZN7S3583C5D0Ev,
+};
+extern void ABISELECT(_ZTv0_n24_N7S3583C5D1Ev,_ZTv0_n12_N7S3583C5D1Ev)();
+extern void ABISELECT(_ZTv0_n24_N7S3583C5D0Ev,_ZTv0_n12_N7S3583C5D0Ev)();
+static  VTBL_ENTRY _tg__ZTV10S3583C6_nt__7S3583C5__A1__8S3583C12[] = {
+  ABISELECT(64,32),
+  ABISELECT(64,32),
+  (VTBL_ENTRY)&(_ZTI7S3583C5[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C5D1Ev,_ZTv0_n12_N7S3583C5D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C5D0Ev,_ZTv0_n12_N7S3583C5D0Ev),
+};
+extern void ABISELECT(_ZTv0_n24_N7S3583C5D1Ev,_ZTv0_n12_N7S3583C5D1Ev)();
+extern void ABISELECT(_ZTv0_n24_N7S3583C5D0Ev,_ZTv0_n12_N7S3583C5D0Ev)();
+static  VTBL_ENTRY _tg__ZTV7S3583C7__7S3583C5__A1__8S3583C12[] = {
+  ABISELECT(48,24),
+  ABISELECT(48,24),
+  (VTBL_ENTRY)&(_ZTI7S3583C5[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C5D1Ev,_ZTv0_n12_N7S3583C5D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C5D0Ev,_ZTv0_n12_N7S3583C5D0Ev),
+};
+static  VTT_ENTRY vtt_S3583C12[] = {
+  {&(_ZTV8S3583C12[9]),  9,87},
+  {&(_tg__ZTV7S3583C9__A__8S3583C12[7]),  7,9},
+  {&(_tg__ZTV10S3583C4_nt__7S3583C9__A__8S3583C12[3]),  3,5},
+  {&(_tg__ZTV7S3583C5__7S3583C9__A__8S3583C12[5]),  5,7},
+  {&(_tg__ZTV10S3583C6_nt__A1__7S3583C9__A__8S3583C12[3]),  3,5},
+  {&(_tg__ZTV7S3583C7__A1__7S3583C9__A__8S3583C12[3]),  3,5},
+  {&(_tg__ZTV8S3583C10__7S3583C9__A__8S3583C12[4]),  4,6},
+  {&(_tg__ZTV7S3583C78S3583C10__A2__7S3583C9__A__8S3583C12[2]),  2,4},
+  {&(_ZTV8S3583C12[34]),  34,87},
+  {&(_ZTV8S3583C12[45]),  45,87},
+  {&(_ZTV8S3583C12[54]),  54,87},
+  {&(_ZTV8S3583C12[49]),  49,87},
+  {&(_ZTV8S3583C12[59]),  59,87},
+  {&(_ZTV8S3583C12[64]),  64,87},
+  {&(_ZTV8S3583C12[39]),  39,87},
+  {&(_ZTV8S3583C12[74]),  74,87},
+  {&(_ZTV8S3583C12[78]),  78,87},
+  {&(_ZTV8S3583C12[85]),  85,87},
+  {&(_ZTV8S3583C12[18]),  18,87},
+  {&(_tg__ZTV8S3583C13__8S3583C12[8]),  8,11},
+  {&(_tg__ZTV7S3583C38S3583C13__8S3583C12[5]),  5,7},
+  {&(_tg__ZTV7S3583C57S3583C38S3583C13__8S3583C12[4]),  4,6},
+  {&(_tg__ZTV10S3583C6_nt__7S3583C57S3583C38S3583C13__8S3583C12[3]),  3,5},
+  {&(_tg__ZTV7S3583C7__7S3583C57S3583C38S3583C13__8S3583C12[3]),  3,5},
+  {&(_tg__ZTV10S3583C4_nt__7S3583C38S3583C13__8S3583C12[3]),  3,5},
+  {&(_tg__ZTV10S3583C6_nt__7S3583C38S3583C13__8S3583C12[3]),  3,5},
+  {&(_tg__ZTV7S3583C7__7S3583C38S3583C13__8S3583C12[3]),  3,5},
+  {&(_tg__ZTV8S3583C10__8S3583C13__8S3583C12[4]),  4,6},
+  {&(_tg__ZTV10S3583C6_nt__8S3583C13__8S3583C12[3]),  3,5},
+  {&(_tg__ZTV7S3583C78S3583C10__8S3583C13__8S3583C12[2]),  2,4},
+  {&(_tg__ZTV7S3583C7__A1__8S3583C13__8S3583C12[3]),  3,5},
+  {&(_tg__ZTV10S3583C4_nt__A1__8S3583C13__8S3583C12[3]),  3,5},
+  {&(_tg__ZTV7S3583C9__8S3583C13__8S3583C12[8]),  8,10},
+  {&(_tg__ZTV10S3583C6_nt7S3583C9__A2__8S3583C13__8S3583C12[2]),  2,4},
+  {&(_tg__ZTV7S3583C5__A1__8S3583C13__8S3583C12[5]),  5,7},
+  {&(_tg__ZTV8S3583C10__8S3583C12[3]),  3,5},
+  {&(_tg__ZTV10S3583C6_nt__8S3583C10__8S3583C12[3]),  3,5},
+  {&(_tg__ZTV7S3583C9__8S3583C12[7]),  7,9},
+  {&(_tg__ZTV10S3583C4_nt__7S3583C9__8S3583C12[3]),  3,5},
+  {&(_tg__ZTV7S3583C5__7S3583C9__8S3583C12[5]),  5,7},
+  {&(_tg__ZTV10S3583C6_nt__A1__7S3583C9__8S3583C12[3]),  3,5},
+  {&(_tg__ZTV7S3583C7__A1__7S3583C9__8S3583C12[3]),  3,5},
+  {&(_tg__ZTV8S3583C10__7S3583C9__8S3583C12[4]),  4,6},
+  {&(_tg__ZTV7S3583C78S3583C10__A2__7S3583C9__8S3583C12[2]),  2,4},
+  {&(_tg__ZTV7S3583C5__A1__8S3583C12[4]),  4,6},
+  {&(_tg__ZTV10S3583C6_nt__7S3583C5__A1__8S3583C12[3]),  3,5},
+  {&(_tg__ZTV7S3583C7__7S3583C5__A1__8S3583C12[3]),  3,5},
+};
+extern VTBL_ENTRY _ZTI8S3583C12[];
+extern  VTBL_ENTRY _ZTV8S3583C12[];
+extern  VTBL_ENTRY * __attribute__((weak))_ZTT8S3583C12[];
+static VTBL_ENTRY alt_thunk_names8[] = {
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n24_N8S3583C10D0Ev,_ZTv0_n12_N8S3583C10D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn16_N8S3583C10D0Ev,_ZThn8_N8S3583C10D0Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n24_N8S3583C10D1Ev,_ZTv0_n12_N8S3583C10D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn16_N8S3583C10D1Ev,_ZThn8_N8S3583C10D1Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n40_N8S3583C13D0Ev,_ZTv0_n20_N8S3583C13D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn120_N8S3583C13D0Ev,_ZThn60_N8S3583C13D0Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n40_N8S3583C13D1Ev,_ZTv0_n20_N8S3583C13D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn120_N8S3583C13D1Ev,_ZThn60_N8S3583C13D1Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n64_N8S3583C13D0Ev,_ZTv0_n32_N8S3583C13D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn88_N8S3583C13D0Ev,_ZThn44_N8S3583C13D0Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n64_N8S3583C13D1Ev,_ZTv0_n32_N8S3583C13D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn88_N8S3583C13D1Ev,_ZThn44_N8S3583C13D1Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n24_N8S3583C13D0Ev,_ZTv0_n12_N8S3583C13D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn80_N8S3583C13D0Ev,_ZThn40_N8S3583C13D0Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn72_N8S3583C13D0Ev,_ZThn36_N8S3583C13D0Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn56_N8S3583C13D0Ev,_ZThn28_N8S3583C13D0Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n24_N8S3583C13D1Ev,_ZTv0_n12_N8S3583C13D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn80_N8S3583C13D1Ev,_ZThn40_N8S3583C13D1Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn72_N8S3583C13D1Ev,_ZThn36_N8S3583C13D1Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn56_N8S3583C13D1Ev,_ZThn28_N8S3583C13D1Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n32_N8S3583C13D0Ev,_ZTv0_n16_N8S3583C13D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn40_N8S3583C13D0Ev,_ZThn20_N8S3583C13D0Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n32_N8S3583C13D1Ev,_ZTv0_n16_N8S3583C13D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn40_N8S3583C13D1Ev,_ZThn20_N8S3583C13D1Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n24_N7S3583C3D0Ev,_ZTv0_n12_N7S3583C3D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn72_N7S3583C3D0Ev,_ZThn36_N7S3583C3D0Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn56_N7S3583C3D0Ev,_ZThn28_N7S3583C3D0Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn80_N7S3583C3D0Ev,_ZThn40_N7S3583C3D0Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n24_N7S3583C3D1Ev,_ZTv0_n12_N7S3583C3D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn72_N7S3583C3D1Ev,_ZThn36_N7S3583C3D1Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn56_N7S3583C3D1Ev,_ZThn28_N7S3583C3D1Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn80_N7S3583C3D1Ev,_ZThn40_N7S3583C3D1Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n24_N7S3583C5D0Ev,_ZTv0_n12_N7S3583C5D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn72_N7S3583C5D0Ev,_ZThn36_N7S3583C5D0Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn56_N7S3583C5D0Ev,_ZThn28_N7S3583C5D0Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n24_N7S3583C5D1Ev,_ZTv0_n12_N7S3583C5D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn72_N7S3583C5D1Ev,_ZThn36_N7S3583C5D1Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn56_N7S3583C5D1Ev,_ZThn28_N7S3583C5D1Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n32_N7S3583C9D0Ev,_ZTv0_n16_N7S3583C9D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn80_N7S3583C9D0Ev,_ZThn40_N7S3583C9D0Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n32_N7S3583C9D1Ev,_ZTv0_n16_N7S3583C9D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn80_N7S3583C9D1Ev,_ZThn40_N7S3583C9D1Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n40_N7S3583C9D0Ev,_ZTv0_n20_N7S3583C9D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn32_N7S3583C9D0Ev,_ZThn16_N7S3583C9D0Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn160_N7S3583C9D0Ev,_ZThn80_N7S3583C9D0Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n40_N7S3583C9D1Ev,_ZTv0_n20_N7S3583C9D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn32_N7S3583C9D1Ev,_ZThn16_N7S3583C9D1Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn160_N7S3583C9D1Ev,_ZThn80_N7S3583C9D1Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n24_N7S3583C9D0Ev,_ZTv0_n12_N7S3583C9D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn112_N7S3583C9D0Ev,_ZThn56_N7S3583C9D0Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn96_N7S3583C9D0Ev,_ZThn48_N7S3583C9D0Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn120_N7S3583C9D0Ev,_ZThn60_N7S3583C9D0Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n24_N7S3583C9D1Ev,_ZTv0_n12_N7S3583C9D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn112_N7S3583C9D1Ev,_ZThn56_N7S3583C9D1Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn96_N7S3583C9D1Ev,_ZThn48_N7S3583C9D1Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn120_N7S3583C9D1Ev,_ZThn60_N7S3583C9D1Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n40_N8S3583C12D0Ev,_ZTv0_n20_N8S3583C12D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn168_N8S3583C12D0Ev,_ZThn84_N8S3583C12D0Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n40_N8S3583C12D1Ev,_ZTv0_n20_N8S3583C12D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn168_N8S3583C12D1Ev,_ZThn84_N8S3583C12D1Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n64_N8S3583C12D0Ev,_ZTv0_n32_N8S3583C12D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn136_N8S3583C12D0Ev,_ZThn68_N8S3583C12D0Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n64_N8S3583C12D1Ev,_ZTv0_n32_N8S3583C12D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn136_N8S3583C12D1Ev,_ZThn68_N8S3583C12D1Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n24_N8S3583C12D0Ev,_ZTv0_n12_N8S3583C12D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn128_N8S3583C12D0Ev,_ZThn64_N8S3583C12D0Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn120_N8S3583C12D0Ev,_ZThn60_N8S3583C12D0Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn104_N8S3583C12D0Ev,_ZThn52_N8S3583C12D0Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n24_N8S3583C12D1Ev,_ZTv0_n12_N8S3583C12D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn128_N8S3583C12D1Ev,_ZThn64_N8S3583C12D1Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn120_N8S3583C12D1Ev,_ZThn60_N8S3583C12D1Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn104_N8S3583C12D1Ev,_ZThn52_N8S3583C12D1Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n32_N8S3583C12D0Ev,_ZTv0_n16_N8S3583C12D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn88_N8S3583C12D0Ev,_ZThn44_N8S3583C12D0Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n32_N8S3583C12D1Ev,_ZTv0_n16_N8S3583C12D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn88_N8S3583C12D1Ev,_ZThn44_N8S3583C12D1Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n72_N8S3583C12D0Ev,_ZTv0_n36_N8S3583C12D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn48_N8S3583C12D0Ev,_ZThn24_N8S3583C12D0Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n72_N8S3583C12D1Ev,_ZTv0_n36_N8S3583C12D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn48_N8S3583C12D1Ev,_ZThn24_N8S3583C12D1Ev),
+  ALT_NAMES_TERMINATOR,
+ALT_NAMES_TERMINATOR};
+Class_Descriptor cd_S3583C12 = {  "S3583C12", // class name
+  bases_S3583C12, 20,
+  &(vtc_S3583C12[0]), // expected_vtbl_contents
+  &(vtt_S3583C12[0]), // expected_vtt_contents
+  ABISELECT(184,92), // object size
+  NSPAIRA(_ZTI8S3583C12),ABISELECT(72,40), //typeinfo_var
+  NSPAIRA(_ZTV8S3583C12),87, //virtual function table var
+  9, // offset into main vftv pointed to by object[0]
+  NSPAIRA(_ZTT8S3583C12),47, //virtual table table var
+  20, // n_initialized_bases
+  1, // has_virtual_bases
+  0, // has_class_type_fields
+  alt_thunk_names8,
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S3583C14  {
+  int s3583c14f0;
+  void  mf3583c14(); // _ZN8S3583C149mf3583c14Ev
+  virtual  ~S3583C14(); // _ZN8S3583C14D1Ev
+  S3583C14(); // tgen
+};
+//SIG(-1 S3583C14) C1{ vd m Fi}
+
+
+void  S3583C14 ::mf3583c14(){}
+ S3583C14 ::~S3583C14(){ note_dtor("S3583C14", this);}
+S3583C14 ::S3583C14(){ note_ctor("S3583C14", this);} // tgen
+
+static void Test_S3583C14()
+{
+  extern Class_Descriptor cd_S3583C14;
+  void *lvp;
+  {
+    ABISELECT(double,int) buf[3];
+    init_test(&cd_S3583C14, buf);
+    S3583C14 *dp, &lv = *(dp=new (buf) S3583C14());
+    lvp = (void*)&lv;
+    check2(sizeof(lv), ABISELECT(16,8), "sizeof(S3583C14)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S3583C14)");
+    check_field_offset(lv, s3583c14f0, ABISELECT(8,4), "S3583C14.s3583c14f0");
+    test_class_info(&lv, &cd_S3583C14);
+    dp->~S3583C14();
+  }
+  Check_Ctor_Dtor_Calls(lvp);
+}
+static Arrange_To_Call_Me vS3583C14(Test_S3583C14, "S3583C14", ABISELECT(16,8));
+
+#else // __cplusplus
+
+extern void _ZN8S3583C14C1Ev();
+extern void _ZN8S3583C14D1Ev();
+Name_Map name_map_S3583C14[] = {
+  NSPAIR(_ZN8S3583C14C1Ev),
+  NSPAIR(_ZN8S3583C14D1Ev),
+  {0,0}
+};
+extern VTBL_ENTRY _ZTI8S3583C14[];
+extern void _ZN8S3583C14D1Ev();
+extern void _ZN8S3583C14D0Ev();
+static  VTBL_ENTRY vtc_S3583C14[] = {
+  0,
+  (VTBL_ENTRY)&(_ZTI8S3583C14[0]),
+  (VTBL_ENTRY)&_ZN8S3583C14D1Ev,
+  (VTBL_ENTRY)&_ZN8S3583C14D0Ev,
+};
+extern VTBL_ENTRY _ZTI8S3583C14[];
+extern  VTBL_ENTRY _ZTV8S3583C14[];
+Class_Descriptor cd_S3583C14 = {  "S3583C14", // class name
+  0,0,//no base classes
+  &(vtc_S3583C14[0]), // expected_vtbl_contents
+  0, //no vtt
+  ABISELECT(16,8), // object size
+  NSPAIRA(_ZTI8S3583C14),ABISELECT(16,8), //typeinfo_var
+  NSPAIRA(_ZTV8S3583C14),4, //virtual function table var
+  2, // offset into main vftv pointed to by object[0]
+  {0,0},0, // virtual table table var
+  0, // n_initialized_bases
+  0, // has_virtual_bases
+  0, // has_class_type_fields
+  0, // alt-thunk-names
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S3583C2  : S3583C3 , virtual S3583C5 , S3583C8 , S3583C12 , S3583C14 {
+  int s3583c2f0;
+  virtual  ~S3583C2(); // _ZN7S3583C2D2Ev
+  S3583C2(); // tgen
+};
+//SIG(-1 S3583C2) C1{ BC2{ VBC3{ vd m} BC4{ VBC5{ vd m Fi} BC3 VBC6{ vd m} vd Fi} vd Fp} VBC4 BC7{ VBC3 VBC6 VBC4 VBC8{ VBC3 BC6 BC5 VBC4 VBC9{ BC3 VBC5 BC6 vd} vd Fp} BC10{ VBC4 vd} vd} BC11{ VBC12{ VBC9 VBC6 BC2 BC5 VBC8 vd v1} BC6 BC8 Fi} BC13{ vd m Fi} vd Fi}
+
+
+ S3583C2 ::~S3583C2(){ note_dtor("S3583C2", this);}
+S3583C2 ::S3583C2(){ note_ctor("S3583C2", this);} // tgen
+
+static void Test_S3583C2()
+{
+  extern Class_Descriptor cd_S3583C2;
+  void *lvp;
+  {
+    ABISELECT(double,int) buf[ABISELECT(29,30)];
+    init_test(&cd_S3583C2, buf);
+    S3583C2 *dp, &lv = *(dp=new (buf) S3583C2());
+    lvp = (void*)&lv;
+    check2(sizeof(lv), ABISELECT(224,116), "sizeof(S3583C2)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S3583C2)");
+    /*is_ambiguous_... S3583C2::S3583C3 */ AMB_check_base_class_offset(lv, (S3583C4_nt*)(S3583C3*), ABISELECT(96,52), "S3583C2");
+    /*is_ambiguous_... S3583C8::S3583C4_nt */ AMB_check_base_class_offset(lv, (S3583C4_nt*)(S3583C8*), ABISELECT(96,52), "S3583C2");
+    /*is_ambiguous_... S3583C2::S3583C9 */ AMB_check_base_class_offset(lv, (S3583C4_nt*)(S3583C9*), ABISELECT(96,52), "S3583C2");
+    /*is_ambiguous_... S3583C3::S3583C4_nt */ AMB_check_base_class_offset(lv, (S3583C4_nt*)(S3583C3*)(S3583C13*), ABISELECT(96,52), "S3583C2");
+    /*is_ambiguous_... S3583C12::S3583C9 */ AMB_check_base_class_offset(lv, (S3583C4_nt*)(S3583C9*)(S3583C12*), ABISELECT(96,52), "S3583C2");
+    /*is_ambiguous_... S3583C2::S3583C3 */ AMB_check_base_class_offset(lv, (S3583C6_nt*)(S3583C5*)(S3583C3*), ABISELECT(104,56), "S3583C2");
+    /*is_ambiguous_... S3583C2::S3583C5 */ AMB_check_base_class_offset(lv, (S3583C6_nt*)(S3583C5*), ABISELECT(104,56), "S3583C2");
+    check_base_class_offset(lv, (S3583C6_nt*)(S3583C10*), ABISELECT(104,56), "S3583C2");
+    check_base_class_offset(lv, (S3583C6_nt*)(S3583C5*)(S3583C3*)(S3583C13*), ABISELECT(104,56), "S3583C2");
+    /*is_ambiguous_... S3583C2::S3583C3 */ AMB_check_base_class_offset(lv, (S3583C4_nt*)(S3583C5*)(S3583C3*), 0, "S3583C2");
+    /*is_ambiguous_... S3583C2::S3583C3 */ AMB_check_base_class_offset(lv, (S3583C7*)(S3583C5*)(S3583C3*), ABISELECT(24,12), "S3583C2");
+    /*is_ambiguous_... S3583C2::S3583C5 */ AMB_check_base_class_offset(lv, (S3583C7*)(S3583C5*), ABISELECT(24,12), "S3583C2");
+    /*is_ambiguous_... S3583C8::S3583C7 */ AMB_check_base_class_offset(lv, (S3583C7*)(S3583C8*), ABISELECT(24,12), "S3583C2");
+    /*is_ambiguous_... S3583C13::S3583C7 */ AMB_check_base_class_offset(lv, (S3583C7*)(S3583C13*), ABISELECT(24,12), "S3583C2");
+    check_base_class_offset(lv, (S3583C7*)(S3583C5*)(S3583C3*)(S3583C13*), ABISELECT(24,12), "S3583C2");
+    /*is_ambiguous_... S3583C2::S3583C3 */ AMB_check_base_class_offset(lv, (S3583C5*)(S3583C3*), 0, "S3583C2");
+    /*is_ambiguous_... S3583C2::S3583C3 */ AMB_check_base_class_offset(lv, (S3583C3*), 0, "S3583C2");
+    /*is_ambiguous_... S3583C2::S3583C5 */ AMB_check_base_class_offset(lv, (S3583C4_nt*)(S3583C5*), ABISELECT(120,64), "S3583C2");
+    /*is_ambiguous_... S3583C2::S3583C5 */ AMB_check_base_class_offset(lv, (S3583C5*), ABISELECT(120,64), "S3583C2");
+    check_base_class_offset(lv, (S3583C5*)(S3583C8*), ABISELECT(120,64), "S3583C2");
+    /*is_ambiguous_... S3583C2::S3583C9 */ AMB_check_base_class_offset(lv, (S3583C5*)(S3583C9*), ABISELECT(120,64), "S3583C2");
+    check_base_class_offset(lv, (S3583C5*)(S3583C11*)(S3583C8*), ABISELECT(120,64), "S3583C2");
+    /*is_ambiguous_... S3583C12::S3583C9 */ AMB_check_base_class_offset(lv, (S3583C5*)(S3583C9*)(S3583C12*), ABISELECT(120,64), "S3583C2");
+    /*is_ambiguous_... S3583C2::S3583C9 */ AMB_check_base_class_offset(lv, (S3583C7*)(S3583C9*), ABISELECT(136,72), "S3583C2");
+    /*is_ambiguous_... S3583C2::S3583C9 */ AMB_check_base_class_offset(lv, (S3583C6_nt*)(S3583C9*), ABISELECT(144,76), "S3583C2");
+    check_base_class_offset(lv, (S3583C4_nt*)(S3583C10*), ABISELECT(168,88), "S3583C2");
+    check_base_class_offset(lv, (S3583C7*)(S3583C10*), ABISELECT(176,92), "S3583C2");
+    /*is_ambiguous_... S3583C2::S3583C9 */ AMB_check_base_class_offset(lv, (S3583C10*)(S3583C9*), ABISELECT(168,88), "S3583C2");
+    check_base_class_offset(lv, (S3583C10*)(S3583C13*), ABISELECT(168,88), "S3583C2");
+    /*is_ambiguous_... S3583C12::S3583C9 */ AMB_check_base_class_offset(lv, (S3583C10*)(S3583C9*)(S3583C12*), ABISELECT(168,88), "S3583C2");
+    check_base_class_offset(lv, (S3583C9*)(S3583C8*), ABISELECT(136,72), "S3583C2");
+    check_base_class_offset(lv, (S3583C9*)(S3583C13*), ABISELECT(136,72), "S3583C2");
+    check_base_class_offset(lv, (S3583C11*)(S3583C8*), ABISELECT(24,12), "S3583C2");
+    check_base_class_offset(lv, (S3583C8*), ABISELECT(24,12), "S3583C2");
+    check_base_class_offset(lv, (S3583C4_nt*)(S3583C5*)(S3583C3*)(S3583C13*), ABISELECT(184,96), "S3583C2");
+    check_base_class_offset(lv, (S3583C5*)(S3583C3*)(S3583C13*), ABISELECT(184,96), "S3583C2");
+    check_base_class_offset(lv, (S3583C3*)(S3583C13*), ABISELECT(184,96), "S3583C2");
+    /*is_ambiguous_... S3583C13::S3583C6_nt */ AMB_check_base_class_offset(lv, (S3583C6_nt*)(S3583C13*), ABISELECT(208,108), "S3583C2");
+    check_base_class_offset(lv, (S3583C13*)(S3583C12*), ABISELECT(184,96), "S3583C2");
+    /*is_ambiguous_... S3583C12::S3583C7 */ AMB_check_base_class_offset(lv, (S3583C7*)(S3583C12*), ABISELECT(32,16), "S3583C2");
+    /*is_ambiguous_... S3583C12::S3583C9 */ AMB_check_base_class_offset(lv, (S3583C7*)(S3583C9*)(S3583C12*), ABISELECT(40,20), "S3583C2");
+    /*is_ambiguous_... S3583C12::S3583C9 */ AMB_check_base_class_offset(lv, (S3583C6_nt*)(S3583C9*)(S3583C12*), ABISELECT(48,24), "S3583C2");
+    /*is_ambiguous_... S3583C12::S3583C9 */ AMB_check_base_class_offset(lv, (S3583C9*)(S3583C12*), ABISELECT(40,20), "S3583C2");
+    check_base_class_offset(lv, (S3583C12*), ABISELECT(32,16), "S3583C2");
+    check_base_class_offset(lv, (S3583C14*), ABISELECT(80,40), "S3583C2");
+    check_field_offset(lv, s3583c2f0, ABISELECT(92,48), "S3583C2.s3583c2f0");
+    test_class_info(&lv, &cd_S3583C2);
+    dp->~S3583C2();
+  }
+  Check_Ctor_Dtor_Calls(lvp);
+}
+static Arrange_To_Call_Me vS3583C2(Test_S3583C2, "S3583C2", ABISELECT(224,116));
+
+#else // __cplusplus
+
+extern void _ZN7S3583C2C1Ev();
+extern void _ZN7S3583C2D2Ev();
+Name_Map name_map_S3583C2[] = {
+  NSPAIR(_ZN7S3583C2C1Ev),
+  NSPAIR(_ZN7S3583C2D2Ev),
+  {0,0}
+};
+extern Class_Descriptor cd_S3583C4_nt;
+extern VTBL_ENTRY _ZTI10S3583C4_nt[];
+extern  VTBL_ENTRY _ZTV10S3583C4_nt[];
+extern Class_Descriptor cd_S3583C6_nt;
+extern VTBL_ENTRY _ZTI10S3583C6_nt[];
+extern  VTBL_ENTRY _ZTV10S3583C6_nt[];
+extern Class_Descriptor cd_S3583C4_nt;
+extern VTBL_ENTRY _ZTI10S3583C4_nt[];
+extern  VTBL_ENTRY _ZTV10S3583C4_nt[];
+extern Class_Descriptor cd_S3583C7;
+extern VTBL_ENTRY _ZTI7S3583C7[];
+extern  VTBL_ENTRY _ZTV7S3583C7[];
+extern Class_Descriptor cd_S3583C5;
+extern VTBL_ENTRY _ZTI7S3583C5[];
+extern  VTBL_ENTRY _ZTV7S3583C5[];
+extern  VTBL_ENTRY * __attribute__((weak))_ZTT7S3583C5[];
+extern Class_Descriptor cd_S3583C3;
+extern VTBL_ENTRY _ZTI7S3583C3[];
+extern  VTBL_ENTRY _ZTV7S3583C3[];
+extern  VTBL_ENTRY * __attribute__((weak))_ZTT7S3583C3[];
+extern Class_Descriptor cd_S3583C4_nt;
+extern VTBL_ENTRY _ZTI10S3583C4_nt[];
+extern  VTBL_ENTRY _ZTV10S3583C4_nt[];
+extern Class_Descriptor cd_S3583C5;
+extern VTBL_ENTRY _ZTI7S3583C5[];
+extern  VTBL_ENTRY _ZTV7S3583C5[];
+extern  VTBL_ENTRY * __attribute__((weak))_ZTT7S3583C5[];
+extern Class_Descriptor cd_S3583C7;
+extern VTBL_ENTRY _ZTI7S3583C7[];
+extern  VTBL_ENTRY _ZTV7S3583C7[];
+extern Class_Descriptor cd_S3583C6_nt;
+extern VTBL_ENTRY _ZTI10S3583C6_nt[];
+extern  VTBL_ENTRY _ZTV10S3583C6_nt[];
+extern Class_Descriptor cd_S3583C4_nt;
+extern VTBL_ENTRY _ZTI10S3583C4_nt[];
+extern  VTBL_ENTRY _ZTV10S3583C4_nt[];
+extern Class_Descriptor cd_S3583C7;
+extern VTBL_ENTRY _ZTI7S3583C7[];
+extern  VTBL_ENTRY _ZTV7S3583C7[];
+extern Class_Descriptor cd_S3583C10;
+extern VTBL_ENTRY _ZTI8S3583C10[];
+extern  VTBL_ENTRY _ZTV8S3583C10[];
+extern  VTBL_ENTRY * __attribute__((weak))_ZTT8S3583C10[];
+extern Class_Descriptor cd_S3583C9;
+extern VTBL_ENTRY _ZTI7S3583C9[];
+extern  VTBL_ENTRY _ZTV7S3583C9[];
+extern  VTBL_ENTRY * __attribute__((weak))_ZTT7S3583C9[];
+extern Class_Descriptor cd_S3583C11;
+extern VTBL_ENTRY _ZTI8S3583C11[];
+extern  VTBL_ENTRY _ZTV8S3583C11[];
+extern  VTBL_ENTRY * __attribute__((weak))_ZTT8S3583C11[];
+extern Class_Descriptor cd_S3583C8;
+extern VTBL_ENTRY _ZTI7S3583C8[];
+extern  VTBL_ENTRY _ZTV7S3583C8[];
+extern  VTBL_ENTRY * __attribute__((weak))_ZTT7S3583C8[];
+extern Class_Descriptor cd_S3583C4_nt;
+extern VTBL_ENTRY _ZTI10S3583C4_nt[];
+extern  VTBL_ENTRY _ZTV10S3583C4_nt[];
+extern Class_Descriptor cd_S3583C5;
+extern VTBL_ENTRY _ZTI7S3583C5[];
+extern  VTBL_ENTRY _ZTV7S3583C5[];
+extern  VTBL_ENTRY * __attribute__((weak))_ZTT7S3583C5[];
+extern Class_Descriptor cd_S3583C3;
+extern VTBL_ENTRY _ZTI7S3583C3[];
+extern  VTBL_ENTRY _ZTV7S3583C3[];
+extern  VTBL_ENTRY * __attribute__((weak))_ZTT7S3583C3[];
+extern Class_Descriptor cd_S3583C6_nt;
+extern VTBL_ENTRY _ZTI10S3583C6_nt[];
+extern  VTBL_ENTRY _ZTV10S3583C6_nt[];
+extern Class_Descriptor cd_S3583C13;
+extern VTBL_ENTRY _ZTI8S3583C13[];
+extern  VTBL_ENTRY _ZTV8S3583C13[];
+extern  VTBL_ENTRY * __attribute__((weak))_ZTT8S3583C13[];
+extern Class_Descriptor cd_S3583C7;
+extern VTBL_ENTRY _ZTI7S3583C7[];
+extern  VTBL_ENTRY _ZTV7S3583C7[];
+extern Class_Descriptor cd_S3583C7;
+extern VTBL_ENTRY _ZTI7S3583C7[];
+extern  VTBL_ENTRY _ZTV7S3583C7[];
+extern Class_Descriptor cd_S3583C6_nt;
+extern VTBL_ENTRY _ZTI10S3583C6_nt[];
+extern  VTBL_ENTRY _ZTV10S3583C6_nt[];
+extern Class_Descriptor cd_S3583C9;
+extern VTBL_ENTRY _ZTI7S3583C9[];
+extern  VTBL_ENTRY _ZTV7S3583C9[];
+extern  VTBL_ENTRY * __attribute__((weak))_ZTT7S3583C9[];
+extern Class_Descriptor cd_S3583C12;
+extern VTBL_ENTRY _ZTI8S3583C12[];
+extern  VTBL_ENTRY _ZTV8S3583C12[];
+extern  VTBL_ENTRY * __attribute__((weak))_ZTT8S3583C12[];
+extern Class_Descriptor cd_S3583C14;
+extern VTBL_ENTRY _ZTI8S3583C14[];
+extern  VTBL_ENTRY _ZTV8S3583C14[];
+static Base_Class bases_S3583C2[] = {
+  // ofst, vfto, nneg, vtt_idx, base_vtt_idx, init_seq, direct, virtual
+  {&cd_S3583C4_nt,    ABISELECT(96,52), //bcp->offset
+    50, //bcp->virtual_function_table_offset
+    3, //num_negative_vtable_entries(t, bcp)
+    41, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    1, //init_seq
+    5, //immediately_derived
+  0, 1},
+  {&cd_S3583C6_nt,    ABISELECT(104,56), //bcp->offset
+    55, //bcp->virtual_function_table_offset
+    3, //num_negative_vtable_entries(t, bcp)
+    42, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    2, //init_seq
+    4, //immediately_derived
+  0, 1},
+  {&cd_S3583C4_nt,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    17, //init_seq
+    4, //immediately_derived
+  0, 0},
+  {&cd_S3583C7,    ABISELECT(24,12), //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    3, //num_negative_vtable_entries(t, bcp)
+    43, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    3, //init_seq
+    4, //immediately_derived
+  0, 1},
+  {&cd_S3583C5,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    4, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    3, //bcp->base_subarray_index_in_construction_vtbl_array
+    18, //init_seq
+    5, //immediately_derived
+  0, 0},
+  {&cd_S3583C3,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    5, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    2, //bcp->base_subarray_index_in_construction_vtbl_array
+    19, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {&cd_S3583C4_nt,    ABISELECT(120,64), //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    4, //init_seq
+    7, //immediately_derived
+  0, 0},
+  {&cd_S3583C5,    ABISELECT(120,64), //bcp->offset
+    60, //bcp->virtual_function_table_offset
+    5, //num_negative_vtable_entries(t, bcp)
+    44, //bcp->index_in_construction_vtbl_array
+    54, //bcp->base_subarray_index_in_construction_vtbl_array
+    5, //init_seq
+    -1, //immediately_derived
+  1, 1},
+  {&cd_S3583C7,    ABISELECT(136,72), //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    9, //init_seq
+    13, //immediately_derived
+  0, 0},
+  {&cd_S3583C6_nt,    ABISELECT(144,76), //bcp->offset
+    77, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    47, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    10, //init_seq
+    13, //immediately_derived
+  0, 0},
+  {&cd_S3583C4_nt,    ABISELECT(168,88), //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    6, //init_seq
+    12, //immediately_derived
+  0, 0},
+  {&cd_S3583C7,    ABISELECT(176,92), //bcp->offset
+    87, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    49, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    7, //init_seq
+    12, //immediately_derived
+  0, 0},
+  {&cd_S3583C10,    ABISELECT(168,88), //bcp->offset
+    81, //bcp->virtual_function_table_offset
+    4, //num_negative_vtable_entries(t, bcp)
+    48, //bcp->index_in_construction_vtbl_array
+    64, //bcp->base_subarray_index_in_construction_vtbl_array
+    8, //init_seq
+    13, //immediately_derived
+  0, 1},
+  {&cd_S3583C9,    ABISELECT(136,72), //bcp->offset
+    67, //bcp->virtual_function_table_offset
+    8, //num_negative_vtable_entries(t, bcp)
+    46, //bcp->index_in_construction_vtbl_array
+    57, //bcp->base_subarray_index_in_construction_vtbl_array
+    11, //init_seq
+    15, //immediately_derived
+  0, 1},
+  {&cd_S3583C11,    ABISELECT(24,12), //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    6, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    10, //bcp->base_subarray_index_in_construction_vtbl_array
+    20, //init_seq
+    15, //immediately_derived
+  0, 0},
+  {&cd_S3583C8,    ABISELECT(24,12), //bcp->offset
+    11, //bcp->virtual_function_table_offset
+    9, //num_negative_vtable_entries(t, bcp)
+    45, //bcp->index_in_construction_vtbl_array
+    9, //bcp->base_subarray_index_in_construction_vtbl_array
+    21, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {&cd_S3583C4_nt,    ABISELECT(184,96), //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    12, //init_seq
+    17, //immediately_derived
+  0, 0},
+  {&cd_S3583C5,    ABISELECT(184,96), //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    4, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    68, //bcp->base_subarray_index_in_construction_vtbl_array
+    13, //init_seq
+    18, //immediately_derived
+  0, 0},
+  {&cd_S3583C3,    ABISELECT(184,96), //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    5, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    67, //bcp->base_subarray_index_in_construction_vtbl_array
+    14, //init_seq
+    20, //immediately_derived
+  0, 0},
+  {&cd_S3583C6_nt,    ABISELECT(208,108), //bcp->offset
+    104, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    52, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    15, //init_seq
+    20, //immediately_derived
+  0, 0},
+  {&cd_S3583C13,    ABISELECT(184,96), //bcp->offset
+    91, //bcp->virtual_function_table_offset
+    10, //num_negative_vtable_entries(t, bcp)
+    51, //bcp->index_in_construction_vtbl_array
+    66, //bcp->base_subarray_index_in_construction_vtbl_array
+    16, //init_seq
+    25, //immediately_derived
+  0, 1},
+  {&cd_S3583C7,    ABISELECT(32,16), //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    22, //init_seq
+    25, //immediately_derived
+  0, 0},
+  {&cd_S3583C7,    ABISELECT(40,20), //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    23, //init_seq
+    24, //immediately_derived
+  0, 0},
+  {&cd_S3583C6_nt,    ABISELECT(48,24), //bcp->offset
+    42, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    24, //init_seq
+    24, //immediately_derived
+  0, 0},
+  {&cd_S3583C9,    ABISELECT(40,20), //bcp->offset
+    33, //bcp->virtual_function_table_offset
+    7, //num_negative_vtable_entries(t, bcp)
+    53, //bcp->index_in_construction_vtbl_array
+    23, //bcp->base_subarray_index_in_construction_vtbl_array
+    25, //init_seq
+    25, //immediately_derived
+  0, 0},
+  {&cd_S3583C12,    ABISELECT(32,16), //bcp->offset
+    22, //bcp->virtual_function_table_offset
+    9, //num_negative_vtable_entries(t, bcp)
+    50, //bcp->index_in_construction_vtbl_array
+    22, //bcp->base_subarray_index_in_construction_vtbl_array
+    26, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {&cd_S3583C14,    ABISELECT(80,40), //bcp->offset
+    46, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    27, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {0}};
+extern VTBL_ENTRY _ZTI7S3583C2[];
+extern void _ZN7S3583C2D1Ev();
+extern void _ZN7S3583C2D0Ev();
+extern void ABISELECT(_ZTv0_n24_N7S3583C2D1Ev,_ZTv0_n12_N7S3583C2D1Ev)();
+extern void ABISELECT(_ZThn24_N7S3583C2D1Ev,_ZThn12_N7S3583C2D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N7S3583C2D0Ev,_ZTv0_n12_N7S3583C2D0Ev)();
+extern void ABISELECT(_ZThn24_N7S3583C2D0Ev,_ZThn12_N7S3583C2D0Ev)() __attribute__((weak));
+extern void ABISELECT(_ZThn32_N7S3583C2D1Ev,_ZThn16_N7S3583C2D1Ev)();
+extern void ABISELECT(_ZThn32_N7S3583C2D0Ev,_ZThn16_N7S3583C2D0Ev)();
+extern void ABISELECT(_ZThn40_N7S3583C2D1Ev,_ZThn20_N7S3583C2D1Ev)();
+extern void ABISELECT(_ZThn40_N7S3583C2D0Ev,_ZThn20_N7S3583C2D0Ev)();
+extern void ABISELECT(_ZThn48_N7S3583C2D1Ev,_ZThn24_N7S3583C2D1Ev)();
+extern void ABISELECT(_ZThn48_N7S3583C2D0Ev,_ZThn24_N7S3583C2D0Ev)();
+extern void ABISELECT(_ZThn80_N7S3583C2D1Ev,_ZThn40_N7S3583C2D1Ev)();
+extern void ABISELECT(_ZThn80_N7S3583C2D0Ev,_ZThn40_N7S3583C2D0Ev)();
+extern void ABISELECT(_ZTv0_n24_N7S3583C2D1Ev,_ZTv0_n12_N7S3583C2D1Ev)();
+extern void ABISELECT(_ZThn96_N7S3583C2D1Ev,_ZThn52_N7S3583C2D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N7S3583C2D0Ev,_ZTv0_n12_N7S3583C2D0Ev)();
+extern void ABISELECT(_ZThn96_N7S3583C2D0Ev,_ZThn52_N7S3583C2D0Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N7S3583C2D1Ev,_ZTv0_n12_N7S3583C2D1Ev)();
+extern void ABISELECT(_ZThn104_N7S3583C2D1Ev,_ZThn56_N7S3583C2D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N7S3583C2D0Ev,_ZTv0_n12_N7S3583C2D0Ev)();
+extern void ABISELECT(_ZThn104_N7S3583C2D0Ev,_ZThn56_N7S3583C2D0Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n40_N7S3583C2D1Ev,_ZTv0_n20_N7S3583C2D1Ev)();
+extern void ABISELECT(_ZThn120_N7S3583C2D1Ev,_ZThn64_N7S3583C2D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n40_N7S3583C2D0Ev,_ZTv0_n20_N7S3583C2D0Ev)();
+extern void ABISELECT(_ZThn120_N7S3583C2D0Ev,_ZThn64_N7S3583C2D0Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n64_N7S3583C2D1Ev,_ZTv0_n32_N7S3583C2D1Ev)();
+extern void ABISELECT(_ZThn136_N7S3583C2D1Ev,_ZThn72_N7S3583C2D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n64_N7S3583C2D0Ev,_ZTv0_n32_N7S3583C2D0Ev)();
+extern void ABISELECT(_ZThn136_N7S3583C2D0Ev,_ZThn72_N7S3583C2D0Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTvn8_n64_N7S3583C2D1Ev,_ZTvn4_n32_N7S3583C2D1Ev)();
+extern void ABISELECT(_ZTvn8_n64_N7S3583C2D0Ev,_ZTvn4_n32_N7S3583C2D0Ev)();
+extern void ABISELECT(_ZTv0_n32_N7S3583C2D1Ev,_ZTv0_n16_N7S3583C2D1Ev)();
+extern void ABISELECT(_ZThn168_N7S3583C2D1Ev,_ZThn88_N7S3583C2D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n32_N7S3583C2D0Ev,_ZTv0_n16_N7S3583C2D0Ev)();
+extern void ABISELECT(_ZThn168_N7S3583C2D0Ev,_ZThn88_N7S3583C2D0Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTvn8_n32_N7S3583C2D1Ev,_ZTvn4_n16_N7S3583C2D1Ev)();
+extern void ABISELECT(_ZTvn8_n32_N7S3583C2D0Ev,_ZTvn4_n16_N7S3583C2D0Ev)();
+extern void ABISELECT(_ZTv0_n72_N7S3583C2D1Ev,_ZTv0_n36_N7S3583C2D1Ev)();
+extern void ABISELECT(_ZThn184_N7S3583C2D1Ev,_ZThn96_N7S3583C2D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n72_N7S3583C2D0Ev,_ZTv0_n36_N7S3583C2D0Ev)();
+extern void ABISELECT(_ZThn184_N7S3583C2D0Ev,_ZThn96_N7S3583C2D0Ev)() __attribute__((weak));
+extern void _ZN8S3583C132v1Ev();
+extern void ABISELECT(_ZTvn24_n72_N7S3583C2D1Ev,_ZTvn12_n36_N7S3583C2D1Ev)();
+extern void ABISELECT(_ZTvn24_n72_N7S3583C2D0Ev,_ZTvn12_n36_N7S3583C2D0Ev)();
+static  VTBL_ENTRY vtc_S3583C2[] = {
+  ABISELECT(184,96),
+  ABISELECT(168,88),
+  ABISELECT(136,72),
+  ABISELECT(120,64),
+  ABISELECT(96,52),
+  ABISELECT(24,12),
+  ABISELECT(104,56),
+  0,
+  (VTBL_ENTRY)&(_ZTI7S3583C2[0]),
+  (VTBL_ENTRY)&_ZN7S3583C2D1Ev,
+  (VTBL_ENTRY)&_ZN7S3583C2D0Ev,
+  ABISELECT(144,76),
+  ABISELECT(112,60),
+  ABISELECT(72,40),
+  0,
+  ABISELECT(80,44),
+  ABISELECT(96,52),
+  ABISELECT(-24,-12),
+  ABISELECT(-24,-12),
+  (VTBL_ENTRY)&(_ZTI7S3583C2[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C2D1Ev,_ZTv0_n12_N7S3583C2D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C2D0Ev,_ZTv0_n12_N7S3583C2D0Ev),
+  ABISELECT(88,48),
+  ABISELECT(104,56),
+  ABISELECT(64,36),
+  ABISELECT(-8,-4),
+  ABISELECT(72,40),
+  ABISELECT(136,72),
+  ABISELECT(152,80),
+  ABISELECT(-32,-16),
+  (VTBL_ENTRY)&(_ZTI7S3583C2[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZThn32_N7S3583C2D1Ev,_ZThn16_N7S3583C2D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZThn32_N7S3583C2D0Ev,_ZThn16_N7S3583C2D0Ev),
+  ABISELECT(128,68),
+  ABISELECT(-16,-8),
+  ABISELECT(64,36),
+  ABISELECT(80,44),
+  ABISELECT(56,32),
+  ABISELECT(-40,-20),
+  (VTBL_ENTRY)&(_ZTI7S3583C2[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZThn40_N7S3583C2D1Ev,_ZThn20_N7S3583C2D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZThn40_N7S3583C2D0Ev,_ZThn20_N7S3583C2D0Ev),
+  ABISELECT(-48,-24),
+  (VTBL_ENTRY)&(_ZTI7S3583C2[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZThn48_N7S3583C2D1Ev,_ZThn24_N7S3583C2D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZThn48_N7S3583C2D0Ev,_ZThn24_N7S3583C2D0Ev),
+  ABISELECT(-80,-40),
+  (VTBL_ENTRY)&(_ZTI7S3583C2[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZThn80_N7S3583C2D1Ev,_ZThn40_N7S3583C2D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZThn80_N7S3583C2D0Ev,_ZThn40_N7S3583C2D0Ev),
+  ABISELECT(-96,-52),
+  ABISELECT(-96,-52),
+  (VTBL_ENTRY)&(_ZTI7S3583C2[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C2D1Ev,_ZTv0_n12_N7S3583C2D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C2D0Ev,_ZTv0_n12_N7S3583C2D0Ev),
+  ABISELECT(-104,-56),
+  ABISELECT(-104,-56),
+  (VTBL_ENTRY)&(_ZTI7S3583C2[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C2D1Ev,_ZTv0_n12_N7S3583C2D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C2D0Ev,_ZTv0_n12_N7S3583C2D0Ev),
+  ABISELECT(-120,-64),
+  ABISELECT(-96,-52),
+  ABISELECT(-16,-8),
+  ABISELECT(-120,-64),
+  (VTBL_ENTRY)&(_ZTI7S3583C2[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n40_N7S3583C2D1Ev,_ZTv0_n20_N7S3583C2D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n40_N7S3583C2D0Ev,_ZTv0_n20_N7S3583C2D0Ev),
+  ABISELECT(-136,-72),
+  ABISELECT(32,16),
+  ABISELECT(-112,-60),
+  ABISELECT(-32,-16),
+  ABISELECT(-16,-8),
+  ABISELECT(-40,-20),
+  ABISELECT(-136,-72),
+  (VTBL_ENTRY)&(_ZTI7S3583C2[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n64_N7S3583C2D1Ev,_ZTv0_n32_N7S3583C2D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n64_N7S3583C2D0Ev,_ZTv0_n32_N7S3583C2D0Ev),
+  ABISELECT(-144,-76),
+  (VTBL_ENTRY)&(_ZTI7S3583C2[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTvn8_n64_N7S3583C2D1Ev,_ZTvn4_n32_N7S3583C2D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTvn8_n64_N7S3583C2D0Ev,_ZTvn4_n32_N7S3583C2D0Ev),
+  ABISELECT(-168,-88),
+  ABISELECT(-64,-32),
+  ABISELECT(-168,-88),
+  (VTBL_ENTRY)&(_ZTI7S3583C2[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n32_N7S3583C2D1Ev,_ZTv0_n16_N7S3583C2D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n32_N7S3583C2D0Ev,_ZTv0_n16_N7S3583C2D0Ev),
+  ABISELECT(-176,-92),
+  (VTBL_ENTRY)&(_ZTI7S3583C2[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTvn8_n32_N7S3583C2D1Ev,_ZTvn4_n16_N7S3583C2D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTvn8_n32_N7S3583C2D0Ev,_ZTvn4_n16_N7S3583C2D0Ev),
+  0,
+  ABISELECT(-184,-96),
+  ABISELECT(-64,-32),
+  ABISELECT(-48,-24),
+  ABISELECT(-16,-8),
+  ABISELECT(-88,-44),
+  ABISELECT(-160,-84),
+  ABISELECT(-80,-40),
+  ABISELECT(-184,-96),
+  (VTBL_ENTRY)&(_ZTI7S3583C2[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n72_N7S3583C2D1Ev,_ZTv0_n36_N7S3583C2D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n72_N7S3583C2D0Ev,_ZTv0_n36_N7S3583C2D0Ev),
+  (VTBL_ENTRY)&_ZN8S3583C132v1Ev,
+  ABISELECT(-208,-108),
+  (VTBL_ENTRY)&(_ZTI7S3583C2[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTvn24_n72_N7S3583C2D1Ev,_ZTvn12_n36_N7S3583C2D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTvn24_n72_N7S3583C2D0Ev,_ZTvn12_n36_N7S3583C2D0Ev),
+};
+extern VTBL_ENTRY _ZTV7S3583C2[];
+extern void _ZN7S3583C3D1Ev();
+extern void _ZN7S3583C3D0Ev();
+static  VTBL_ENTRY _tg__ZTV7S3583C3__7S3583C2[] = {
+  ABISELECT(96,52),
+  ABISELECT(24,12),
+  ABISELECT(104,56),
+  0,
+  (VTBL_ENTRY)&(_ZTI7S3583C3[0]),
+  (VTBL_ENTRY)&_ZN7S3583C3D1Ev,
+  (VTBL_ENTRY)&_ZN7S3583C3D0Ev,
+};
+extern void _ZN7S3583C5D1Ev();
+extern void _ZN7S3583C5D0Ev();
+static  VTBL_ENTRY _tg__ZTV7S3583C57S3583C3__7S3583C2[] = {
+  ABISELECT(24,12),
+  ABISELECT(104,56),
+  0,
+  (VTBL_ENTRY)&(_ZTI7S3583C5[0]),
+  (VTBL_ENTRY)&_ZN7S3583C5D1Ev,
+  (VTBL_ENTRY)&_ZN7S3583C5D0Ev,
+};
+extern void ABISELECT(_ZTv0_n24_N7S3583C5D1Ev,_ZTv0_n12_N7S3583C5D1Ev)();
+extern void ABISELECT(_ZThn104_N7S3583C5D1Ev,_ZThn56_N7S3583C5D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N7S3583C5D0Ev,_ZTv0_n12_N7S3583C5D0Ev)();
+extern void ABISELECT(_ZThn104_N7S3583C5D0Ev,_ZThn56_N7S3583C5D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV10S3583C6_nt__7S3583C57S3583C3__7S3583C2[] = {
+  ABISELECT(-104,-56),
+  ABISELECT(-104,-56),
+  (VTBL_ENTRY)&(_ZTI7S3583C5[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C5D1Ev,_ZTv0_n12_N7S3583C5D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C5D0Ev,_ZTv0_n12_N7S3583C5D0Ev),
+};
+extern void ABISELECT(_ZTv0_n24_N7S3583C5D1Ev,_ZTv0_n12_N7S3583C5D1Ev)();
+extern void ABISELECT(_ZThn24_N7S3583C5D1Ev,_ZThn12_N7S3583C5D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N7S3583C5D0Ev,_ZTv0_n12_N7S3583C5D0Ev)();
+extern void ABISELECT(_ZThn24_N7S3583C5D0Ev,_ZThn12_N7S3583C5D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV7S3583C7__7S3583C57S3583C3__7S3583C2[] = {
+  ABISELECT(-24,-12),
+  ABISELECT(-24,-12),
+  (VTBL_ENTRY)&(_ZTI7S3583C5[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C5D1Ev,_ZTv0_n12_N7S3583C5D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C5D0Ev,_ZTv0_n12_N7S3583C5D0Ev),
+};
+extern void ABISELECT(_ZTv0_n24_N7S3583C3D1Ev,_ZTv0_n12_N7S3583C3D1Ev)();
+extern void ABISELECT(_ZThn96_N7S3583C3D1Ev,_ZThn52_N7S3583C3D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N7S3583C3D0Ev,_ZTv0_n12_N7S3583C3D0Ev)();
+extern void ABISELECT(_ZThn96_N7S3583C3D0Ev,_ZThn52_N7S3583C3D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV10S3583C4_nt__7S3583C3__7S3583C2[] = {
+  ABISELECT(-96,-52),
+  ABISELECT(-96,-52),
+  (VTBL_ENTRY)&(_ZTI7S3583C3[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C3D1Ev,_ZTv0_n12_N7S3583C3D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C3D0Ev,_ZTv0_n12_N7S3583C3D0Ev),
+};
+extern void ABISELECT(_ZTv0_n24_N7S3583C3D1Ev,_ZTv0_n12_N7S3583C3D1Ev)();
+extern void ABISELECT(_ZThn104_N7S3583C3D1Ev,_ZThn56_N7S3583C3D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N7S3583C3D0Ev,_ZTv0_n12_N7S3583C3D0Ev)();
+extern void ABISELECT(_ZThn104_N7S3583C3D0Ev,_ZThn56_N7S3583C3D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV10S3583C6_nt__7S3583C3__7S3583C2[] = {
+  ABISELECT(-104,-56),
+  ABISELECT(-104,-56),
+  (VTBL_ENTRY)&(_ZTI7S3583C3[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C3D1Ev,_ZTv0_n12_N7S3583C3D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C3D0Ev,_ZTv0_n12_N7S3583C3D0Ev),
+};
+extern void ABISELECT(_ZTv0_n24_N7S3583C3D1Ev,_ZTv0_n12_N7S3583C3D1Ev)();
+extern void ABISELECT(_ZThn24_N7S3583C3D1Ev,_ZThn12_N7S3583C3D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N7S3583C3D0Ev,_ZTv0_n12_N7S3583C3D0Ev)();
+extern void ABISELECT(_ZThn24_N7S3583C3D0Ev,_ZThn12_N7S3583C3D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV7S3583C7__7S3583C3__7S3583C2[] = {
+  ABISELECT(-24,-12),
+  ABISELECT(-24,-12),
+  (VTBL_ENTRY)&(_ZTI7S3583C3[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C3D1Ev,_ZTv0_n12_N7S3583C3D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C3D0Ev,_ZTv0_n12_N7S3583C3D0Ev),
+};
+extern void ABISELECT(_ZTv0_n24_N7S3583C8D1Ev,_ZTv0_n12_N7S3583C8D1Ev)();
+extern void _ZN7S3583C8D1Ev() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N7S3583C8D0Ev,_ZTv0_n12_N7S3583C8D0Ev)();
+extern void _ZN7S3583C8D0Ev() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV7S3583C8__7S3583C2[] = {
+  ABISELECT(144,76),
+  ABISELECT(112,60),
+  ABISELECT(72,40),
+  0,
+  ABISELECT(80,44),
+  ABISELECT(96,52),
+  0,
+  0,
+  (VTBL_ENTRY)&(_ZTI7S3583C8[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C8D1Ev,_ZTv0_n12_N7S3583C8D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C8D0Ev,_ZTv0_n12_N7S3583C8D0Ev),
+};
+extern void ABISELECT(_ZTv0_n24_N8S3583C11D1Ev,_ZTv0_n12_N8S3583C11D1Ev)();
+extern void _ZN8S3583C11D1Ev() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N8S3583C11D0Ev,_ZTv0_n12_N8S3583C11D0Ev)();
+extern void _ZN8S3583C11D0Ev() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV8S3583C117S3583C8__7S3583C2[] = {
+  0,
+  ABISELECT(80,44),
+  ABISELECT(96,52),
+  0,
+  0,
+  (VTBL_ENTRY)&(_ZTI8S3583C11[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C11D1Ev,_ZTv0_n12_N8S3583C11D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C11D0Ev,_ZTv0_n12_N8S3583C11D0Ev),
+};
+extern void ABISELECT(_ZTv0_n40_N8S3583C11D1Ev,_ZTv0_n20_N8S3583C11D1Ev)();
+extern void ABISELECT(_ZThn96_N8S3583C11D1Ev,_ZThn52_N8S3583C11D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n40_N8S3583C11D0Ev,_ZTv0_n20_N8S3583C11D0Ev)();
+extern void ABISELECT(_ZThn96_N8S3583C11D0Ev,_ZThn52_N8S3583C11D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV7S3583C5__8S3583C117S3583C8__7S3583C2[] = {
+  ABISELECT(-96,-52),
+  ABISELECT(-96,-52),
+  ABISELECT(-16,-8),
+  ABISELECT(-96,-52),
+  (VTBL_ENTRY)&(_ZTI8S3583C11[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n40_N8S3583C11D1Ev,_ZTv0_n20_N8S3583C11D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n40_N8S3583C11D0Ev,_ZTv0_n20_N8S3583C11D0Ev),
+};
+extern void ABISELECT(_ZTv0_n24_N8S3583C11D1Ev,_ZTv0_n12_N8S3583C11D1Ev)();
+extern void ABISELECT(_ZThn80_N8S3583C11D1Ev,_ZThn44_N8S3583C11D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N8S3583C11D0Ev,_ZTv0_n12_N8S3583C11D0Ev)();
+extern void ABISELECT(_ZThn80_N8S3583C11D0Ev,_ZThn44_N8S3583C11D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV10S3583C6_nt__8S3583C117S3583C8__7S3583C2[] = {
+  ABISELECT(-80,-44),
+  ABISELECT(-80,-44),
+  (VTBL_ENTRY)&(_ZTI8S3583C11[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C11D1Ev,_ZTv0_n12_N8S3583C11D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C11D0Ev,_ZTv0_n12_N8S3583C11D0Ev),
+};
+extern void ABISELECT(_ZTv0_n24_N7S3583C8D1Ev,_ZTv0_n12_N7S3583C8D1Ev)();
+extern void ABISELECT(_ZThn72_N7S3583C8D1Ev,_ZThn40_N7S3583C8D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N7S3583C8D0Ev,_ZTv0_n12_N7S3583C8D0Ev)();
+extern void ABISELECT(_ZThn72_N7S3583C8D0Ev,_ZThn40_N7S3583C8D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV10S3583C4_nt__7S3583C8__7S3583C2[] = {
+  ABISELECT(-72,-40),
+  ABISELECT(-72,-40),
+  (VTBL_ENTRY)&(_ZTI7S3583C8[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C8D1Ev,_ZTv0_n12_N7S3583C8D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C8D0Ev,_ZTv0_n12_N7S3583C8D0Ev),
+};
+extern void ABISELECT(_ZTv0_n40_N7S3583C8D1Ev,_ZTv0_n20_N7S3583C8D1Ev)();
+extern void ABISELECT(_ZThn96_N7S3583C8D1Ev,_ZThn52_N7S3583C8D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n40_N7S3583C8D0Ev,_ZTv0_n20_N7S3583C8D0Ev)();
+extern void ABISELECT(_ZThn96_N7S3583C8D0Ev,_ZThn52_N7S3583C8D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV7S3583C5__7S3583C8__7S3583C2[] = {
+  ABISELECT(-96,-52),
+  ABISELECT(-96,-52),
+  ABISELECT(-16,-8),
+  ABISELECT(-96,-52),
+  (VTBL_ENTRY)&(_ZTI7S3583C8[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n40_N7S3583C8D1Ev,_ZTv0_n20_N7S3583C8D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n40_N7S3583C8D0Ev,_ZTv0_n20_N7S3583C8D0Ev),
+};
+extern void ABISELECT(_ZTv0_n24_N7S3583C8D1Ev,_ZTv0_n12_N7S3583C8D1Ev)();
+extern void ABISELECT(_ZThn80_N7S3583C8D1Ev,_ZThn44_N7S3583C8D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N7S3583C8D0Ev,_ZTv0_n12_N7S3583C8D0Ev)();
+extern void ABISELECT(_ZThn80_N7S3583C8D0Ev,_ZThn44_N7S3583C8D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV10S3583C6_nt__7S3583C8__7S3583C2[] = {
+  ABISELECT(-80,-44),
+  ABISELECT(-80,-44),
+  (VTBL_ENTRY)&(_ZTI7S3583C8[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C8D1Ev,_ZTv0_n12_N7S3583C8D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C8D0Ev,_ZTv0_n12_N7S3583C8D0Ev),
+};
+extern void ABISELECT(_ZTv0_n64_N7S3583C8D1Ev,_ZTv0_n32_N7S3583C8D1Ev)();
+extern void ABISELECT(_ZThn112_N7S3583C8D1Ev,_ZThn60_N7S3583C8D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n64_N7S3583C8D0Ev,_ZTv0_n32_N7S3583C8D0Ev)();
+extern void ABISELECT(_ZThn112_N7S3583C8D0Ev,_ZThn60_N7S3583C8D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV7S3583C9__7S3583C8__7S3583C2[] = {
+  ABISELECT(-112,-60),
+  ABISELECT(32,16),
+  ABISELECT(-112,-60),
+  ABISELECT(-32,-16),
+  ABISELECT(-16,-8),
+  ABISELECT(-40,-20),
+  ABISELECT(-112,-60),
+  (VTBL_ENTRY)&(_ZTI7S3583C8[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n64_N7S3583C8D1Ev,_ZTv0_n32_N7S3583C8D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n64_N7S3583C8D0Ev,_ZTv0_n32_N7S3583C8D0Ev),
+};
+extern void ABISELECT(_ZTvn8_n64_N7S3583C8D1Ev,_ZTvn4_n32_N7S3583C8D1Ev)();
+extern void ABISELECT(_ZTvn8_n64_N7S3583C8D0Ev,_ZTvn4_n32_N7S3583C8D0Ev)();
+static  VTBL_ENTRY _tg__ZTV10S3583C6_nt7S3583C9__A1__7S3583C8__7S3583C2[] = {
+  ABISELECT(-120,-64),
+  (VTBL_ENTRY)&(_ZTI7S3583C8[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTvn8_n64_N7S3583C8D1Ev,_ZTvn4_n32_N7S3583C8D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTvn8_n64_N7S3583C8D0Ev,_ZTvn4_n32_N7S3583C8D0Ev),
+};
+extern void ABISELECT(_ZTv0_n32_N7S3583C8D1Ev,_ZTv0_n16_N7S3583C8D1Ev)();
+extern void ABISELECT(_ZThn144_N7S3583C8D1Ev,_ZThn76_N7S3583C8D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n32_N7S3583C8D0Ev,_ZTv0_n16_N7S3583C8D0Ev)();
+extern void ABISELECT(_ZThn144_N7S3583C8D0Ev,_ZThn76_N7S3583C8D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV8S3583C10__7S3583C8__7S3583C2[] = {
+  ABISELECT(-144,-76),
+  ABISELECT(-64,-32),
+  ABISELECT(-144,-76),
+  (VTBL_ENTRY)&(_ZTI7S3583C8[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n32_N7S3583C8D1Ev,_ZTv0_n16_N7S3583C8D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n32_N7S3583C8D0Ev,_ZTv0_n16_N7S3583C8D0Ev),
+};
+extern void ABISELECT(_ZTvn8_n32_N7S3583C8D1Ev,_ZTvn4_n16_N7S3583C8D1Ev)();
+extern void ABISELECT(_ZTvn8_n32_N7S3583C8D0Ev,_ZTvn4_n16_N7S3583C8D0Ev)();
+static  VTBL_ENTRY _tg__ZTV7S3583C78S3583C10__A2__7S3583C8__7S3583C2[] = {
+  ABISELECT(-152,-80),
+  (VTBL_ENTRY)&(_ZTI7S3583C8[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTvn8_n32_N7S3583C8D1Ev,_ZTvn4_n16_N7S3583C8D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTvn8_n32_N7S3583C8D0Ev,_ZTvn4_n16_N7S3583C8D0Ev),
+};
+extern void _ZN8S3583C12D1Ev();
+extern void _ZN8S3583C12D0Ev();
+static  VTBL_ENTRY _tg__ZTV8S3583C12__7S3583C2[] = {
+  ABISELECT(88,48),
+  ABISELECT(104,56),
+  ABISELECT(64,36),
+  ABISELECT(-8,-4),
+  ABISELECT(72,40),
+  ABISELECT(136,72),
+  ABISELECT(152,80),
+  0,
+  (VTBL_ENTRY)&(_ZTI8S3583C12[0]),
+  (VTBL_ENTRY)&_ZN8S3583C12D1Ev,
+  (VTBL_ENTRY)&_ZN8S3583C12D0Ev,
+};
+extern void _ZN7S3583C9D1Ev();
+extern void _ZN7S3583C9D0Ev();
+static  VTBL_ENTRY _tg__ZTV7S3583C98S3583C12__A1__7S3583C2[] = {
+  ABISELECT(128,68),
+  ABISELECT(-16,-8),
+  ABISELECT(64,36),
+  ABISELECT(80,44),
+  ABISELECT(56,32),
+  0,
+  (VTBL_ENTRY)&(_ZTI7S3583C9[0]),
+  (VTBL_ENTRY)&_ZN7S3583C9D1Ev,
+  (VTBL_ENTRY)&_ZN7S3583C9D0Ev,
+};
+extern void ABISELECT(_ZTv0_n24_N7S3583C9D1Ev,_ZTv0_n12_N7S3583C9D1Ev)();
+extern void ABISELECT(_ZThn56_N7S3583C9D1Ev,_ZThn32_N7S3583C9D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N7S3583C9D0Ev,_ZTv0_n12_N7S3583C9D0Ev)();
+extern void ABISELECT(_ZThn56_N7S3583C9D0Ev,_ZThn32_N7S3583C9D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV10S3583C4_nt__7S3583C98S3583C12__A1__7S3583C2[] = {
+  ABISELECT(-56,-32),
+  ABISELECT(-56,-32),
+  (VTBL_ENTRY)&(_ZTI7S3583C9[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C9D1Ev,_ZTv0_n12_N7S3583C9D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C9D0Ev,_ZTv0_n12_N7S3583C9D0Ev),
+};
+extern void ABISELECT(_ZTv0_n40_N7S3583C9D1Ev,_ZTv0_n20_N7S3583C9D1Ev)();
+extern void ABISELECT(_ZThn80_N7S3583C9D1Ev,_ZThn44_N7S3583C9D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n40_N7S3583C9D0Ev,_ZTv0_n20_N7S3583C9D0Ev)();
+extern void ABISELECT(_ZThn80_N7S3583C9D0Ev,_ZThn44_N7S3583C9D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV7S3583C5__7S3583C98S3583C12__A1__7S3583C2[] = {
+  ABISELECT(-80,-44),
+  ABISELECT(-96,-52),
+  ABISELECT(-16,-8),
+  ABISELECT(-80,-44),
+  (VTBL_ENTRY)&(_ZTI7S3583C9[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n40_N7S3583C9D1Ev,_ZTv0_n20_N7S3583C9D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n40_N7S3583C9D0Ev,_ZTv0_n20_N7S3583C9D0Ev),
+};
+extern void ABISELECT(_ZTv0_n24_N7S3583C9D1Ev,_ZTv0_n12_N7S3583C9D1Ev)();
+extern void ABISELECT(_ZThn64_N7S3583C9D1Ev,_ZThn36_N7S3583C9D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N7S3583C9D0Ev,_ZTv0_n12_N7S3583C9D0Ev)();
+extern void ABISELECT(_ZThn64_N7S3583C9D0Ev,_ZThn36_N7S3583C9D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV10S3583C6_nt__A1__7S3583C98S3583C12__A1__7S3583C2[] = {
+  ABISELECT(-64,-36),
+  ABISELECT(-64,-36),
+  (VTBL_ENTRY)&(_ZTI7S3583C9[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C9D1Ev,_ZTv0_n12_N7S3583C9D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C9D0Ev,_ZTv0_n12_N7S3583C9D0Ev),
+};
+extern void ABISELECT(_ZTv0_n24_N7S3583C9D1Ev,_ZTv0_n12_N7S3583C9D1Ev)();
+extern void ABISELECT(_ZTv0_n24_N7S3583C9D0Ev,_ZTv0_n12_N7S3583C9D0Ev)();
+static  VTBL_ENTRY _tg__ZTV7S3583C7__A1__7S3583C98S3583C12__A1__7S3583C2[] = {
+  ABISELECT(16,8),
+  ABISELECT(16,8),
+  (VTBL_ENTRY)&(_ZTI7S3583C9[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C9D1Ev,_ZTv0_n12_N7S3583C9D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C9D0Ev,_ZTv0_n12_N7S3583C9D0Ev),
+};
+extern void ABISELECT(_ZTv0_n32_N7S3583C9D1Ev,_ZTv0_n16_N7S3583C9D1Ev)();
+extern void ABISELECT(_ZThn128_N7S3583C9D1Ev,_ZThn68_N7S3583C9D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n32_N7S3583C9D0Ev,_ZTv0_n16_N7S3583C9D0Ev)();
+extern void ABISELECT(_ZThn128_N7S3583C9D0Ev,_ZThn68_N7S3583C9D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV8S3583C10__7S3583C98S3583C12__A1__7S3583C2[] = {
+  ABISELECT(-128,-68),
+  ABISELECT(-64,-32),
+  ABISELECT(-128,-68),
+  (VTBL_ENTRY)&(_ZTI7S3583C9[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n32_N7S3583C9D1Ev,_ZTv0_n16_N7S3583C9D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n32_N7S3583C9D0Ev,_ZTv0_n16_N7S3583C9D0Ev),
+};
+extern void ABISELECT(_ZTvn8_n32_N7S3583C9D1Ev,_ZTvn4_n16_N7S3583C9D1Ev)();
+extern void ABISELECT(_ZTvn8_n32_N7S3583C9D0Ev,_ZTvn4_n16_N7S3583C9D0Ev)();
+static  VTBL_ENTRY _tg__ZTV7S3583C78S3583C10__A2__7S3583C98S3583C12__A1__7S3583C2[] = {
+  ABISELECT(-136,-72),
+  (VTBL_ENTRY)&(_ZTI7S3583C9[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTvn8_n32_N7S3583C9D1Ev,_ZTvn4_n16_N7S3583C9D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTvn8_n32_N7S3583C9D0Ev,_ZTvn4_n16_N7S3583C9D0Ev),
+};
+extern void ABISELECT(_ZTv0_n72_N8S3583C12D1Ev,_ZTv0_n36_N8S3583C12D1Ev)();
+extern void ABISELECT(_ZThn152_N8S3583C12D1Ev,_ZThn80_N8S3583C12D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n72_N8S3583C12D0Ev,_ZTv0_n36_N8S3583C12D0Ev)();
+extern void ABISELECT(_ZThn152_N8S3583C12D0Ev,_ZThn80_N8S3583C12D0Ev)() __attribute__((weak));
+extern void _ZN8S3583C132v1Ev();
+static  VTBL_ENTRY _tg__ZTV8S3583C13__8S3583C12__7S3583C2[] = {
+  0,
+  ABISELECT(-152,-80),
+  ABISELECT(-64,-32),
+  ABISELECT(-48,-24),
+  ABISELECT(-16,-8),
+  ABISELECT(-88,-44),
+  ABISELECT(-160,-84),
+  ABISELECT(-80,-40),
+  ABISELECT(-152,-80),
+  (VTBL_ENTRY)&(_ZTI8S3583C12[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n72_N8S3583C12D1Ev,_ZTv0_n36_N8S3583C12D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n72_N8S3583C12D0Ev,_ZTv0_n36_N8S3583C12D0Ev),
+  (VTBL_ENTRY)&_ZN8S3583C132v1Ev,
+};
+extern void ABISELECT(_ZTv0_n32_N8S3583C12D1Ev,_ZTv0_n16_N8S3583C12D1Ev)();
+extern void ABISELECT(_ZThn136_N8S3583C12D1Ev,_ZThn72_N8S3583C12D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n32_N8S3583C12D0Ev,_ZTv0_n16_N8S3583C12D0Ev)();
+extern void ABISELECT(_ZThn136_N8S3583C12D0Ev,_ZThn72_N8S3583C12D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV8S3583C10__8S3583C12__7S3583C2[] = {
+  ABISELECT(-136,-72),
+  ABISELECT(-64,-32),
+  ABISELECT(-136,-72),
+  (VTBL_ENTRY)&(_ZTI8S3583C12[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n32_N8S3583C12D1Ev,_ZTv0_n16_N8S3583C12D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n32_N8S3583C12D0Ev,_ZTv0_n16_N8S3583C12D0Ev),
+};
+extern void ABISELECT(_ZTv0_n24_N8S3583C12D1Ev,_ZTv0_n12_N8S3583C12D1Ev)();
+extern void ABISELECT(_ZThn72_N8S3583C12D1Ev,_ZThn40_N8S3583C12D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N8S3583C12D0Ev,_ZTv0_n12_N8S3583C12D0Ev)();
+extern void ABISELECT(_ZThn72_N8S3583C12D0Ev,_ZThn40_N8S3583C12D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV10S3583C6_nt__8S3583C12__7S3583C2[] = {
+  ABISELECT(-72,-40),
+  ABISELECT(-72,-40),
+  (VTBL_ENTRY)&(_ZTI8S3583C12[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C12D1Ev,_ZTv0_n12_N8S3583C12D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C12D0Ev,_ZTv0_n12_N8S3583C12D0Ev),
+};
+extern void ABISELECT(_ZTvn8_n32_N8S3583C12D1Ev,_ZTvn4_n16_N8S3583C12D1Ev)();
+extern void ABISELECT(_ZTvn8_n32_N8S3583C12D0Ev,_ZTvn4_n16_N8S3583C12D0Ev)();
+static  VTBL_ENTRY _tg__ZTV7S3583C78S3583C10__8S3583C12__7S3583C2[] = {
+  ABISELECT(-144,-76),
+  (VTBL_ENTRY)&(_ZTI8S3583C12[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTvn8_n32_N8S3583C12D1Ev,_ZTvn4_n16_N8S3583C12D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTvn8_n32_N8S3583C12D0Ev,_ZTvn4_n16_N8S3583C12D0Ev),
+};
+extern void ABISELECT(_ZTv0_n24_N8S3583C12D1Ev,_ZTv0_n12_N8S3583C12D1Ev)();
+extern void ABISELECT(_ZTv0_n24_N8S3583C12D0Ev,_ZTv0_n12_N8S3583C12D0Ev)();
+static  VTBL_ENTRY _tg__ZTV7S3583C7__A1__8S3583C12__7S3583C2[] = {
+  ABISELECT(8,4),
+  ABISELECT(8,4),
+  (VTBL_ENTRY)&(_ZTI8S3583C12[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C12D1Ev,_ZTv0_n12_N8S3583C12D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C12D0Ev,_ZTv0_n12_N8S3583C12D0Ev),
+};
+extern void ABISELECT(_ZTv0_n24_N8S3583C12D1Ev,_ZTv0_n12_N8S3583C12D1Ev)();
+extern void ABISELECT(_ZThn64_N8S3583C12D1Ev,_ZThn36_N8S3583C12D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N8S3583C12D0Ev,_ZTv0_n12_N8S3583C12D0Ev)();
+extern void ABISELECT(_ZThn64_N8S3583C12D0Ev,_ZThn36_N8S3583C12D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV10S3583C4_nt__A1__8S3583C12__7S3583C2[] = {
+  ABISELECT(-64,-36),
+  ABISELECT(-64,-36),
+  (VTBL_ENTRY)&(_ZTI8S3583C12[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C12D1Ev,_ZTv0_n12_N8S3583C12D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C12D0Ev,_ZTv0_n12_N8S3583C12D0Ev),
+};
+extern void ABISELECT(_ZTvn24_n72_N8S3583C12D1Ev,_ZTvn12_n36_N8S3583C12D1Ev)();
+extern void ABISELECT(_ZTvn24_n72_N8S3583C12D0Ev,_ZTvn12_n36_N8S3583C12D0Ev)();
+static  VTBL_ENTRY _tg__ZTV10S3583C6_nt8S3583C13__A1__8S3583C12__7S3583C2[] = {
+  ABISELECT(-176,-92),
+  (VTBL_ENTRY)&(_ZTI8S3583C12[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTvn24_n72_N8S3583C12D1Ev,_ZTvn12_n36_N8S3583C12D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTvn24_n72_N8S3583C12D0Ev,_ZTvn12_n36_N8S3583C12D0Ev),
+};
+extern void ABISELECT(_ZTv0_n64_N8S3583C12D1Ev,_ZTv0_n32_N8S3583C12D1Ev)();
+extern void ABISELECT(_ZThn104_N8S3583C12D1Ev,_ZThn56_N8S3583C12D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n64_N8S3583C12D0Ev,_ZTv0_n32_N8S3583C12D0Ev)();
+extern void ABISELECT(_ZThn104_N8S3583C12D0Ev,_ZThn56_N8S3583C12D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV7S3583C9__8S3583C12__7S3583C2[] = {
+  ABISELECT(-104,-56),
+  ABISELECT(32,16),
+  ABISELECT(-112,-60),
+  ABISELECT(-32,-16),
+  ABISELECT(-16,-8),
+  ABISELECT(-40,-20),
+  ABISELECT(-104,-56),
+  (VTBL_ENTRY)&(_ZTI8S3583C12[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n64_N8S3583C12D1Ev,_ZTv0_n32_N8S3583C12D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n64_N8S3583C12D0Ev,_ZTv0_n32_N8S3583C12D0Ev),
+};
+extern void ABISELECT(_ZTvn8_n64_N8S3583C12D1Ev,_ZTvn4_n32_N8S3583C12D1Ev)();
+extern void ABISELECT(_ZTvn8_n64_N8S3583C12D0Ev,_ZTvn4_n32_N8S3583C12D0Ev)();
+static  VTBL_ENTRY _tg__ZTV10S3583C6_nt7S3583C9__A2__8S3583C12__7S3583C2[] = {
+  ABISELECT(-112,-60),
+  (VTBL_ENTRY)&(_ZTI8S3583C12[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTvn8_n64_N8S3583C12D1Ev,_ZTvn4_n32_N8S3583C12D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTvn8_n64_N8S3583C12D0Ev,_ZTvn4_n32_N8S3583C12D0Ev),
+};
+extern void ABISELECT(_ZTv0_n40_N8S3583C12D1Ev,_ZTv0_n20_N8S3583C12D1Ev)();
+extern void ABISELECT(_ZThn88_N8S3583C12D1Ev,_ZThn48_N8S3583C12D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n40_N8S3583C12D0Ev,_ZTv0_n20_N8S3583C12D0Ev)();
+extern void ABISELECT(_ZThn88_N8S3583C12D0Ev,_ZThn48_N8S3583C12D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV7S3583C5__A1__8S3583C12__7S3583C2[] = {
+  ABISELECT(-88,-48),
+  ABISELECT(-96,-52),
+  ABISELECT(-16,-8),
+  ABISELECT(-88,-48),
+  (VTBL_ENTRY)&(_ZTI8S3583C12[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n40_N8S3583C12D1Ev,_ZTv0_n20_N8S3583C12D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n40_N8S3583C12D0Ev,_ZTv0_n20_N8S3583C12D0Ev),
+};
+extern void ABISELECT(_ZThn8_N8S3583C12D1Ev,_ZThn4_N8S3583C12D1Ev)();
+extern void ABISELECT(_ZThn8_N8S3583C12D0Ev,_ZThn4_N8S3583C12D0Ev)();
+static  VTBL_ENTRY _tg__ZTV7S3583C9__A__8S3583C12__7S3583C2[] = {
+  ABISELECT(128,68),
+  ABISELECT(-16,-8),
+  ABISELECT(64,36),
+  ABISELECT(80,44),
+  ABISELECT(56,32),
+  ABISELECT(-8,-4),
+  (VTBL_ENTRY)&(_ZTI8S3583C12[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZThn8_N8S3583C12D1Ev,_ZThn4_N8S3583C12D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZThn8_N8S3583C12D0Ev,_ZThn4_N8S3583C12D0Ev),
+};
+extern void _ZN7S3583C5D1Ev();
+extern void _ZN7S3583C5D0Ev();
+static  VTBL_ENTRY _tg__ZTV7S3583C5__A1__7S3583C2[] = {
+  ABISELECT(-96,-52),
+  ABISELECT(-16,-8),
+  0,
+  (VTBL_ENTRY)&(_ZTI7S3583C5[0]),
+  (VTBL_ENTRY)&_ZN7S3583C5D1Ev,
+  (VTBL_ENTRY)&_ZN7S3583C5D0Ev,
+};
+extern void ABISELECT(_ZTv0_n24_N7S3583C5D1Ev,_ZTv0_n12_N7S3583C5D1Ev)();
+extern void ABISELECT(_ZTv0_n24_N7S3583C5D0Ev,_ZTv0_n12_N7S3583C5D0Ev)();
+static  VTBL_ENTRY _tg__ZTV10S3583C6_nt__7S3583C5__A1__7S3583C2[] = {
+  ABISELECT(16,8),
+  ABISELECT(16,8),
+  (VTBL_ENTRY)&(_ZTI7S3583C5[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C5D1Ev,_ZTv0_n12_N7S3583C5D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C5D0Ev,_ZTv0_n12_N7S3583C5D0Ev),
+};
+extern void ABISELECT(_ZTv0_n24_N7S3583C5D1Ev,_ZTv0_n12_N7S3583C5D1Ev)();
+extern void ABISELECT(_ZTv0_n24_N7S3583C5D0Ev,_ZTv0_n12_N7S3583C5D0Ev)();
+static  VTBL_ENTRY _tg__ZTV7S3583C7__7S3583C5__A1__7S3583C2[] = {
+  ABISELECT(96,52),
+  ABISELECT(96,52),
+  (VTBL_ENTRY)&(_ZTI7S3583C5[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C5D1Ev,_ZTv0_n12_N7S3583C5D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C5D0Ev,_ZTv0_n12_N7S3583C5D0Ev),
+};
+extern void _ZN7S3583C9D1Ev();
+extern void _ZN7S3583C9D0Ev();
+static  VTBL_ENTRY _tg__ZTV7S3583C9__7S3583C2[] = {
+  ABISELECT(32,16),
+  ABISELECT(-112,-60),
+  ABISELECT(-32,-16),
+  ABISELECT(-16,-8),
+  ABISELECT(-40,-20),
+  0,
+  (VTBL_ENTRY)&(_ZTI7S3583C9[0]),
+  (VTBL_ENTRY)&_ZN7S3583C9D1Ev,
+  (VTBL_ENTRY)&_ZN7S3583C9D0Ev,
+};
+extern void ABISELECT(_ZTv0_n24_N7S3583C9D1Ev,_ZTv0_n12_N7S3583C9D1Ev)();
+extern void ABISELECT(_ZTv0_n24_N7S3583C9D0Ev,_ZTv0_n12_N7S3583C9D0Ev)();
+static  VTBL_ENTRY _tg__ZTV10S3583C4_nt__7S3583C9__7S3583C2[] = {
+  ABISELECT(40,20),
+  ABISELECT(40,20),
+  (VTBL_ENTRY)&(_ZTI7S3583C9[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C9D1Ev,_ZTv0_n12_N7S3583C9D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C9D0Ev,_ZTv0_n12_N7S3583C9D0Ev),
+};
+extern void ABISELECT(_ZTv0_n40_N7S3583C9D1Ev,_ZTv0_n20_N7S3583C9D1Ev)();
+extern void ABISELECT(_ZTv0_n40_N7S3583C9D0Ev,_ZTv0_n20_N7S3583C9D0Ev)();
+static  VTBL_ENTRY _tg__ZTV7S3583C5__7S3583C9__7S3583C2[] = {
+  ABISELECT(16,8),
+  ABISELECT(-96,-52),
+  ABISELECT(-16,-8),
+  ABISELECT(16,8),
+  (VTBL_ENTRY)&(_ZTI7S3583C9[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n40_N7S3583C9D1Ev,_ZTv0_n20_N7S3583C9D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n40_N7S3583C9D0Ev,_ZTv0_n20_N7S3583C9D0Ev),
+};
+extern void ABISELECT(_ZTv0_n24_N7S3583C9D1Ev,_ZTv0_n12_N7S3583C9D1Ev)();
+extern void ABISELECT(_ZTv0_n24_N7S3583C9D0Ev,_ZTv0_n12_N7S3583C9D0Ev)();
+static  VTBL_ENTRY _tg__ZTV10S3583C6_nt__A1__7S3583C9__7S3583C2[] = {
+  ABISELECT(32,16),
+  ABISELECT(32,16),
+  (VTBL_ENTRY)&(_ZTI7S3583C9[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C9D1Ev,_ZTv0_n12_N7S3583C9D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C9D0Ev,_ZTv0_n12_N7S3583C9D0Ev),
+};
+extern void ABISELECT(_ZTv0_n24_N7S3583C9D1Ev,_ZTv0_n12_N7S3583C9D1Ev)();
+extern void ABISELECT(_ZTv0_n24_N7S3583C9D0Ev,_ZTv0_n12_N7S3583C9D0Ev)();
+static  VTBL_ENTRY _tg__ZTV7S3583C7__A1__7S3583C9__7S3583C2[] = {
+  ABISELECT(112,60),
+  ABISELECT(112,60),
+  (VTBL_ENTRY)&(_ZTI7S3583C9[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C9D1Ev,_ZTv0_n12_N7S3583C9D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C9D0Ev,_ZTv0_n12_N7S3583C9D0Ev),
+};
+extern void ABISELECT(_ZTv0_n32_N7S3583C9D1Ev,_ZTv0_n16_N7S3583C9D1Ev)();
+extern void ABISELECT(_ZThn32_N7S3583C9D1Ev,_ZThn16_N7S3583C9D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n32_N7S3583C9D0Ev,_ZTv0_n16_N7S3583C9D0Ev)();
+extern void ABISELECT(_ZThn32_N7S3583C9D0Ev,_ZThn16_N7S3583C9D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV8S3583C10__7S3583C9__7S3583C2[] = {
+  ABISELECT(-32,-16),
+  ABISELECT(-64,-32),
+  ABISELECT(-32,-16),
+  (VTBL_ENTRY)&(_ZTI7S3583C9[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n32_N7S3583C9D1Ev,_ZTv0_n16_N7S3583C9D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n32_N7S3583C9D0Ev,_ZTv0_n16_N7S3583C9D0Ev),
+};
+extern void ABISELECT(_ZTvn8_n32_N7S3583C9D1Ev,_ZTvn4_n16_N7S3583C9D1Ev)();
+extern void ABISELECT(_ZTvn8_n32_N7S3583C9D0Ev,_ZTvn4_n16_N7S3583C9D0Ev)();
+static  VTBL_ENTRY _tg__ZTV7S3583C78S3583C10__A2__7S3583C9__7S3583C2[] = {
+  ABISELECT(-40,-20),
+  (VTBL_ENTRY)&(_ZTI7S3583C9[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTvn8_n32_N7S3583C9D1Ev,_ZTvn4_n16_N7S3583C9D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTvn8_n32_N7S3583C9D0Ev,_ZTvn4_n16_N7S3583C9D0Ev),
+};
+extern void _ZN8S3583C10D1Ev();
+extern void _ZN8S3583C10D0Ev();
+static  VTBL_ENTRY _tg__ZTV8S3583C10__7S3583C2[] = {
+  ABISELECT(-64,-32),
+  0,
+  (VTBL_ENTRY)&(_ZTI8S3583C10[0]),
+  (VTBL_ENTRY)&_ZN8S3583C10D1Ev,
+  (VTBL_ENTRY)&_ZN8S3583C10D0Ev,
+};
+extern void ABISELECT(_ZTv0_n24_N8S3583C10D1Ev,_ZTv0_n12_N8S3583C10D1Ev)();
+extern void ABISELECT(_ZTv0_n24_N8S3583C10D0Ev,_ZTv0_n12_N8S3583C10D0Ev)();
+static  VTBL_ENTRY _tg__ZTV10S3583C6_nt__8S3583C10__7S3583C2[] = {
+  ABISELECT(64,32),
+  ABISELECT(64,32),
+  (VTBL_ENTRY)&(_ZTI8S3583C10[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C10D1Ev,_ZTv0_n12_N8S3583C10D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C10D0Ev,_ZTv0_n12_N8S3583C10D0Ev),
+};
+extern void _ZN8S3583C13D1Ev();
+extern void _ZN8S3583C13D0Ev();
+extern void _ZN8S3583C132v1Ev();
+static  VTBL_ENTRY _tg__ZTV8S3583C13__7S3583C2[] = {
+  ABISELECT(-64,-32),
+  ABISELECT(-48,-24),
+  ABISELECT(-16,-8),
+  ABISELECT(-88,-44),
+  ABISELECT(-160,-84),
+  ABISELECT(-80,-40),
+  0,
+  (VTBL_ENTRY)&(_ZTI8S3583C13[0]),
+  (VTBL_ENTRY)&_ZN8S3583C13D1Ev,
+  (VTBL_ENTRY)&_ZN8S3583C13D0Ev,
+  (VTBL_ENTRY)&_ZN8S3583C132v1Ev,
+};
+extern void _ZN7S3583C3D1Ev();
+extern void _ZN7S3583C3D0Ev();
+static  VTBL_ENTRY _tg__ZTV7S3583C38S3583C13__A1__7S3583C2[] = {
+  ABISELECT(-88,-44),
+  ABISELECT(-160,-84),
+  ABISELECT(-80,-40),
+  0,
+  (VTBL_ENTRY)&(_ZTI7S3583C3[0]),
+  (VTBL_ENTRY)&_ZN7S3583C3D1Ev,
+  (VTBL_ENTRY)&_ZN7S3583C3D0Ev,
+};
+extern void _ZN7S3583C5D1Ev();
+extern void _ZN7S3583C5D0Ev();
+static  VTBL_ENTRY _tg__ZTV7S3583C57S3583C38S3583C13__A2__7S3583C2[] = {
+  ABISELECT(-160,-84),
+  ABISELECT(-80,-40),
+  0,
+  (VTBL_ENTRY)&(_ZTI7S3583C5[0]),
+  (VTBL_ENTRY)&_ZN7S3583C5D1Ev,
+  (VTBL_ENTRY)&_ZN7S3583C5D0Ev,
+};
+extern void ABISELECT(_ZTv0_n24_N7S3583C5D1Ev,_ZTv0_n12_N7S3583C5D1Ev)();
+extern void ABISELECT(_ZTv0_n24_N7S3583C5D0Ev,_ZTv0_n12_N7S3583C5D0Ev)();
+static  VTBL_ENTRY _tg__ZTV10S3583C6_nt__7S3583C57S3583C38S3583C13__A2__7S3583C2[] = {
+  ABISELECT(80,40),
+  ABISELECT(80,40),
+  (VTBL_ENTRY)&(_ZTI7S3583C5[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C5D1Ev,_ZTv0_n12_N7S3583C5D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C5D0Ev,_ZTv0_n12_N7S3583C5D0Ev),
+};
+extern void ABISELECT(_ZTv0_n24_N7S3583C5D1Ev,_ZTv0_n12_N7S3583C5D1Ev)();
+extern void ABISELECT(_ZTv0_n24_N7S3583C5D0Ev,_ZTv0_n12_N7S3583C5D0Ev)();
+static  VTBL_ENTRY _tg__ZTV7S3583C7__7S3583C57S3583C38S3583C13__A2__7S3583C2[] = {
+  ABISELECT(160,84),
+  ABISELECT(160,84),
+  (VTBL_ENTRY)&(_ZTI7S3583C5[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C5D1Ev,_ZTv0_n12_N7S3583C5D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C5D0Ev,_ZTv0_n12_N7S3583C5D0Ev),
+};
+extern void ABISELECT(_ZTv0_n24_N7S3583C3D1Ev,_ZTv0_n12_N7S3583C3D1Ev)();
+extern void ABISELECT(_ZTv0_n24_N7S3583C3D0Ev,_ZTv0_n12_N7S3583C3D0Ev)();
+static  VTBL_ENTRY _tg__ZTV10S3583C4_nt__7S3583C38S3583C13__A1__7S3583C2[] = {
+  ABISELECT(88,44),
+  ABISELECT(88,44),
+  (VTBL_ENTRY)&(_ZTI7S3583C3[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C3D1Ev,_ZTv0_n12_N7S3583C3D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C3D0Ev,_ZTv0_n12_N7S3583C3D0Ev),
+};
+extern void ABISELECT(_ZTv0_n24_N7S3583C3D1Ev,_ZTv0_n12_N7S3583C3D1Ev)();
+extern void ABISELECT(_ZTv0_n24_N7S3583C3D0Ev,_ZTv0_n12_N7S3583C3D0Ev)();
+static  VTBL_ENTRY _tg__ZTV10S3583C6_nt__7S3583C38S3583C13__A1__7S3583C2[] = {
+  ABISELECT(80,40),
+  ABISELECT(80,40),
+  (VTBL_ENTRY)&(_ZTI7S3583C3[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C3D1Ev,_ZTv0_n12_N7S3583C3D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C3D0Ev,_ZTv0_n12_N7S3583C3D0Ev),
+};
+extern void ABISELECT(_ZTv0_n24_N7S3583C3D1Ev,_ZTv0_n12_N7S3583C3D1Ev)();
+extern void ABISELECT(_ZTv0_n24_N7S3583C3D0Ev,_ZTv0_n12_N7S3583C3D0Ev)();
+static  VTBL_ENTRY _tg__ZTV7S3583C7__7S3583C38S3583C13__A1__7S3583C2[] = {
+  ABISELECT(160,84),
+  ABISELECT(160,84),
+  (VTBL_ENTRY)&(_ZTI7S3583C3[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C3D1Ev,_ZTv0_n12_N7S3583C3D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C3D0Ev,_ZTv0_n12_N7S3583C3D0Ev),
+};
+extern void ABISELECT(_ZTv0_n32_N8S3583C13D1Ev,_ZTv0_n16_N8S3583C13D1Ev)();
+extern void ABISELECT(_ZTv0_n32_N8S3583C13D0Ev,_ZTv0_n16_N8S3583C13D0Ev)();
+static  VTBL_ENTRY _tg__ZTV8S3583C10__8S3583C13__7S3583C2[] = {
+  ABISELECT(16,8),
+  ABISELECT(-64,-32),
+  ABISELECT(16,8),
+  (VTBL_ENTRY)&(_ZTI8S3583C13[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n32_N8S3583C13D1Ev,_ZTv0_n16_N8S3583C13D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n32_N8S3583C13D0Ev,_ZTv0_n16_N8S3583C13D0Ev),
+};
+extern void ABISELECT(_ZTv0_n24_N8S3583C13D1Ev,_ZTv0_n12_N8S3583C13D1Ev)();
+extern void ABISELECT(_ZTv0_n24_N8S3583C13D0Ev,_ZTv0_n12_N8S3583C13D0Ev)();
+static  VTBL_ENTRY _tg__ZTV10S3583C6_nt__8S3583C13__7S3583C2[] = {
+  ABISELECT(80,40),
+  ABISELECT(80,40),
+  (VTBL_ENTRY)&(_ZTI8S3583C13[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C13D1Ev,_ZTv0_n12_N8S3583C13D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C13D0Ev,_ZTv0_n12_N8S3583C13D0Ev),
+};
+extern void ABISELECT(_ZTvn8_n32_N8S3583C13D1Ev,_ZTvn4_n16_N8S3583C13D1Ev)();
+extern void ABISELECT(_ZTvn8_n32_N8S3583C13D0Ev,_ZTvn4_n16_N8S3583C13D0Ev)();
+static  VTBL_ENTRY _tg__ZTV7S3583C78S3583C10__8S3583C13__7S3583C2[] = {
+  ABISELECT(8,4),
+  (VTBL_ENTRY)&(_ZTI8S3583C13[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTvn8_n32_N8S3583C13D1Ev,_ZTvn4_n16_N8S3583C13D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTvn8_n32_N8S3583C13D0Ev,_ZTvn4_n16_N8S3583C13D0Ev),
+};
+extern void ABISELECT(_ZTv0_n24_N8S3583C13D1Ev,_ZTv0_n12_N8S3583C13D1Ev)();
+extern void ABISELECT(_ZTv0_n24_N8S3583C13D0Ev,_ZTv0_n12_N8S3583C13D0Ev)();
+static  VTBL_ENTRY _tg__ZTV7S3583C7__A1__8S3583C13__7S3583C2[] = {
+  ABISELECT(160,84),
+  ABISELECT(160,84),
+  (VTBL_ENTRY)&(_ZTI8S3583C13[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C13D1Ev,_ZTv0_n12_N8S3583C13D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C13D0Ev,_ZTv0_n12_N8S3583C13D0Ev),
+};
+extern void ABISELECT(_ZTv0_n24_N8S3583C13D1Ev,_ZTv0_n12_N8S3583C13D1Ev)();
+extern void ABISELECT(_ZTv0_n24_N8S3583C13D0Ev,_ZTv0_n12_N8S3583C13D0Ev)();
+static  VTBL_ENTRY _tg__ZTV10S3583C4_nt__A1__8S3583C13__7S3583C2[] = {
+  ABISELECT(88,44),
+  ABISELECT(88,44),
+  (VTBL_ENTRY)&(_ZTI8S3583C13[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C13D1Ev,_ZTv0_n12_N8S3583C13D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C13D0Ev,_ZTv0_n12_N8S3583C13D0Ev),
+};
+extern void ABISELECT(_ZTv0_n64_N8S3583C13D1Ev,_ZTv0_n32_N8S3583C13D1Ev)();
+extern void ABISELECT(_ZTv0_n64_N8S3583C13D0Ev,_ZTv0_n32_N8S3583C13D0Ev)();
+static  VTBL_ENTRY _tg__ZTV7S3583C9__8S3583C13__7S3583C2[] = {
+  ABISELECT(48,24),
+  ABISELECT(32,16),
+  ABISELECT(-112,-60),
+  ABISELECT(-32,-16),
+  ABISELECT(-16,-8),
+  ABISELECT(-40,-20),
+  ABISELECT(48,24),
+  (VTBL_ENTRY)&(_ZTI8S3583C13[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n64_N8S3583C13D1Ev,_ZTv0_n32_N8S3583C13D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n64_N8S3583C13D0Ev,_ZTv0_n32_N8S3583C13D0Ev),
+};
+extern void ABISELECT(_ZTvn8_n64_N8S3583C13D1Ev,_ZTvn4_n32_N8S3583C13D1Ev)();
+extern void ABISELECT(_ZTvn8_n64_N8S3583C13D0Ev,_ZTvn4_n32_N8S3583C13D0Ev)();
+static  VTBL_ENTRY _tg__ZTV10S3583C6_nt7S3583C9__A2__8S3583C13__7S3583C2[] = {
+  ABISELECT(40,20),
+  (VTBL_ENTRY)&(_ZTI8S3583C13[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTvn8_n64_N8S3583C13D1Ev,_ZTvn4_n32_N8S3583C13D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTvn8_n64_N8S3583C13D0Ev,_ZTvn4_n32_N8S3583C13D0Ev),
+};
+extern void ABISELECT(_ZTv0_n40_N8S3583C13D1Ev,_ZTv0_n20_N8S3583C13D1Ev)();
+extern void ABISELECT(_ZTv0_n40_N8S3583C13D0Ev,_ZTv0_n20_N8S3583C13D0Ev)();
+static  VTBL_ENTRY _tg__ZTV7S3583C5__A1__8S3583C13__7S3583C2[] = {
+  ABISELECT(64,32),
+  ABISELECT(-96,-52),
+  ABISELECT(-16,-8),
+  ABISELECT(64,32),
+  (VTBL_ENTRY)&(_ZTI8S3583C13[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n40_N8S3583C13D1Ev,_ZTv0_n20_N8S3583C13D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n40_N8S3583C13D0Ev,_ZTv0_n20_N8S3583C13D0Ev),
+};
+static  VTT_ENTRY vtt_S3583C2[] = {
+  {&(_ZTV7S3583C2[9]),  9,108},
+  {&(_tg__ZTV7S3583C3__7S3583C2[5]),  5,7},
+  {&(_tg__ZTV7S3583C57S3583C3__7S3583C2[4]),  4,6},
+  {&(_tg__ZTV10S3583C6_nt__7S3583C57S3583C3__7S3583C2[3]),  3,5},
+  {&(_tg__ZTV7S3583C7__7S3583C57S3583C3__7S3583C2[3]),  3,5},
+  {&(_tg__ZTV10S3583C4_nt__7S3583C3__7S3583C2[3]),  3,5},
+  {&(_tg__ZTV10S3583C6_nt__7S3583C3__7S3583C2[3]),  3,5},
+  {&(_tg__ZTV7S3583C7__7S3583C3__7S3583C2[3]),  3,5},
+  {&(_tg__ZTV7S3583C8__7S3583C2[9]),  9,11},
+  {&(_tg__ZTV8S3583C117S3583C8__7S3583C2[6]),  6,8},
+  {&(_tg__ZTV7S3583C5__8S3583C117S3583C8__7S3583C2[5]),  5,7},
+  {&(_tg__ZTV10S3583C6_nt__8S3583C117S3583C8__7S3583C2[3]),  3,5},
+  {&(_tg__ZTV8S3583C117S3583C8__7S3583C2[6]),  6,8},
+  {&(_tg__ZTV10S3583C4_nt__7S3583C8__7S3583C2[3]),  3,5},
+  {&(_tg__ZTV7S3583C8__7S3583C2[9]),  9,11},
+  {&(_tg__ZTV7S3583C5__7S3583C8__7S3583C2[5]),  5,7},
+  {&(_tg__ZTV10S3583C6_nt__7S3583C8__7S3583C2[3]),  3,5},
+  {&(_tg__ZTV7S3583C9__7S3583C8__7S3583C2[8]),  8,10},
+  {&(_tg__ZTV10S3583C6_nt7S3583C9__A1__7S3583C8__7S3583C2[2]),  2,4},
+  {&(_tg__ZTV8S3583C10__7S3583C8__7S3583C2[4]),  4,6},
+  {&(_tg__ZTV7S3583C78S3583C10__A2__7S3583C8__7S3583C2[2]),  2,4},
+  {&(_tg__ZTV8S3583C12__7S3583C2[9]),  9,11},
+  {&(_tg__ZTV7S3583C98S3583C12__A1__7S3583C2[7]),  7,9},
+  {&(_tg__ZTV10S3583C4_nt__7S3583C98S3583C12__A1__7S3583C2[3]),  3,5},
+  {&(_tg__ZTV7S3583C5__7S3583C98S3583C12__A1__7S3583C2[5]),  5,7},
+  {&(_tg__ZTV10S3583C6_nt__A1__7S3583C98S3583C12__A1__7S3583C2[3]),  3,5},
+  {&(_tg__ZTV7S3583C7__A1__7S3583C98S3583C12__A1__7S3583C2[3]),  3,5},
+  {&(_tg__ZTV8S3583C10__7S3583C98S3583C12__A1__7S3583C2[4]),  4,6},
+  {&(_tg__ZTV7S3583C78S3583C10__A2__7S3583C98S3583C12__A1__7S3583C2[2]),  2,4},
+  {&(_tg__ZTV8S3583C13__8S3583C12__7S3583C2[10]),  10,13},
+  {&(_tg__ZTV8S3583C10__8S3583C12__7S3583C2[4]),  4,6},
+  {&(_tg__ZTV10S3583C6_nt__8S3583C12__7S3583C2[3]),  3,5},
+  {&(_tg__ZTV7S3583C78S3583C10__8S3583C12__7S3583C2[2]),  2,4},
+  {&(_tg__ZTV7S3583C7__A1__8S3583C12__7S3583C2[3]),  3,5},
+  {&(_tg__ZTV10S3583C4_nt__A1__8S3583C12__7S3583C2[3]),  3,5},
+  {&(_tg__ZTV10S3583C6_nt8S3583C13__A1__8S3583C12__7S3583C2[2]),  2,4},
+  {&(_tg__ZTV7S3583C9__8S3583C12__7S3583C2[8]),  8,10},
+  {&(_tg__ZTV10S3583C6_nt7S3583C9__A2__8S3583C12__7S3583C2[2]),  2,4},
+  {&(_tg__ZTV7S3583C5__A1__8S3583C12__7S3583C2[5]),  5,7},
+  {&(_tg__ZTV7S3583C9__A__8S3583C12__7S3583C2[7]),  7,9},
+  {&(_ZTV7S3583C2[53]),  53,108},
+  {&(_ZTV7S3583C2[58]),  58,108},
+  {&(_ZTV7S3583C2[20]),  20,108},
+  {&(_ZTV7S3583C2[65]),  65,108},
+  {&(_ZTV7S3583C2[20]),  20,108},
+  {&(_ZTV7S3583C2[75]),  75,108},
+  {&(_ZTV7S3583C2[79]),  79,108},
+  {&(_ZTV7S3583C2[85]),  85,108},
+  {&(_ZTV7S3583C2[89]),  89,108},
+  {&(_ZTV7S3583C2[31]),  31,108},
+  {&(_ZTV7S3583C2[101]),  101,108},
+  {&(_ZTV7S3583C2[106]),  106,108},
+  {&(_ZTV7S3583C2[40]),  40,108},
+  {&(_tg__ZTV7S3583C5__A1__7S3583C2[4]),  4,6},
+  {&(_tg__ZTV10S3583C6_nt__7S3583C5__A1__7S3583C2[3]),  3,5},
+  {&(_tg__ZTV7S3583C7__7S3583C5__A1__7S3583C2[3]),  3,5},
+  {&(_tg__ZTV7S3583C9__7S3583C2[7]),  7,9},
+  {&(_tg__ZTV10S3583C4_nt__7S3583C9__7S3583C2[3]),  3,5},
+  {&(_tg__ZTV7S3583C5__7S3583C9__7S3583C2[5]),  5,7},
+  {&(_tg__ZTV10S3583C6_nt__A1__7S3583C9__7S3583C2[3]),  3,5},
+  {&(_tg__ZTV7S3583C7__A1__7S3583C9__7S3583C2[3]),  3,5},
+  {&(_tg__ZTV8S3583C10__7S3583C9__7S3583C2[4]),  4,6},
+  {&(_tg__ZTV7S3583C78S3583C10__A2__7S3583C9__7S3583C2[2]),  2,4},
+  {&(_tg__ZTV8S3583C10__7S3583C2[3]),  3,5},
+  {&(_tg__ZTV10S3583C6_nt__8S3583C10__7S3583C2[3]),  3,5},
+  {&(_tg__ZTV8S3583C13__7S3583C2[8]),  8,11},
+  {&(_tg__ZTV7S3583C38S3583C13__A1__7S3583C2[5]),  5,7},
+  {&(_tg__ZTV7S3583C57S3583C38S3583C13__A2__7S3583C2[4]),  4,6},
+  {&(_tg__ZTV10S3583C6_nt__7S3583C57S3583C38S3583C13__A2__7S3583C2[3]),  3,5},
+  {&(_tg__ZTV7S3583C7__7S3583C57S3583C38S3583C13__A2__7S3583C2[3]),  3,5},
+  {&(_tg__ZTV10S3583C4_nt__7S3583C38S3583C13__A1__7S3583C2[3]),  3,5},
+  {&(_tg__ZTV10S3583C6_nt__7S3583C38S3583C13__A1__7S3583C2[3]),  3,5},
+  {&(_tg__ZTV7S3583C7__7S3583C38S3583C13__A1__7S3583C2[3]),  3,5},
+  {&(_tg__ZTV8S3583C10__8S3583C13__7S3583C2[4]),  4,6},
+  {&(_tg__ZTV10S3583C6_nt__8S3583C13__7S3583C2[3]),  3,5},
+  {&(_tg__ZTV7S3583C78S3583C10__8S3583C13__7S3583C2[2]),  2,4},
+  {&(_tg__ZTV7S3583C7__A1__8S3583C13__7S3583C2[3]),  3,5},
+  {&(_tg__ZTV10S3583C4_nt__A1__8S3583C13__7S3583C2[3]),  3,5},
+  {&(_tg__ZTV7S3583C9__8S3583C13__7S3583C2[8]),  8,10},
+  {&(_tg__ZTV10S3583C6_nt7S3583C9__A2__8S3583C13__7S3583C2[2]),  2,4},
+  {&(_tg__ZTV7S3583C5__A1__8S3583C13__7S3583C2[5]),  5,7},
+};
+extern VTBL_ENTRY _ZTI7S3583C2[];
+extern  VTBL_ENTRY _ZTV7S3583C2[];
+extern  VTBL_ENTRY * __attribute__((weak))_ZTT7S3583C2[];
+static VTBL_ENTRY alt_thunk_names9[] = {
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n40_N8S3583C12D0Ev,_ZTv0_n20_N8S3583C12D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn88_N8S3583C12D0Ev,_ZThn48_N8S3583C12D0Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n40_N8S3583C12D1Ev,_ZTv0_n20_N8S3583C12D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn88_N8S3583C12D1Ev,_ZThn48_N8S3583C12D1Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n64_N8S3583C12D0Ev,_ZTv0_n32_N8S3583C12D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn104_N8S3583C12D0Ev,_ZThn56_N8S3583C12D0Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n64_N8S3583C12D1Ev,_ZTv0_n32_N8S3583C12D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn104_N8S3583C12D1Ev,_ZThn56_N8S3583C12D1Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n24_N8S3583C12D0Ev,_ZTv0_n12_N8S3583C12D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn64_N8S3583C12D0Ev,_ZThn36_N8S3583C12D0Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn72_N8S3583C12D0Ev,_ZThn40_N8S3583C12D0Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n24_N8S3583C12D1Ev,_ZTv0_n12_N8S3583C12D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn64_N8S3583C12D1Ev,_ZThn36_N8S3583C12D1Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn72_N8S3583C12D1Ev,_ZThn40_N8S3583C12D1Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n32_N8S3583C12D0Ev,_ZTv0_n16_N8S3583C12D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn136_N8S3583C12D0Ev,_ZThn72_N8S3583C12D0Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n32_N8S3583C12D1Ev,_ZTv0_n16_N8S3583C12D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn136_N8S3583C12D1Ev,_ZThn72_N8S3583C12D1Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n72_N8S3583C12D0Ev,_ZTv0_n36_N8S3583C12D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn152_N8S3583C12D0Ev,_ZThn80_N8S3583C12D0Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n72_N8S3583C12D1Ev,_ZTv0_n36_N8S3583C12D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn152_N8S3583C12D1Ev,_ZThn80_N8S3583C12D1Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n32_N7S3583C9D0Ev,_ZTv0_n16_N7S3583C9D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn32_N7S3583C9D0Ev,_ZThn16_N7S3583C9D0Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn128_N7S3583C9D0Ev,_ZThn68_N7S3583C9D0Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n32_N7S3583C9D1Ev,_ZTv0_n16_N7S3583C9D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn32_N7S3583C9D1Ev,_ZThn16_N7S3583C9D1Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn128_N7S3583C9D1Ev,_ZThn68_N7S3583C9D1Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n40_N7S3583C9D0Ev,_ZTv0_n20_N7S3583C9D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn80_N7S3583C9D0Ev,_ZThn44_N7S3583C9D0Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n40_N7S3583C9D1Ev,_ZTv0_n20_N7S3583C9D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn80_N7S3583C9D1Ev,_ZThn44_N7S3583C9D1Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n24_N7S3583C9D0Ev,_ZTv0_n12_N7S3583C9D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn64_N7S3583C9D0Ev,_ZThn36_N7S3583C9D0Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn56_N7S3583C9D0Ev,_ZThn32_N7S3583C9D0Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n24_N7S3583C9D1Ev,_ZTv0_n12_N7S3583C9D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn64_N7S3583C9D1Ev,_ZThn36_N7S3583C9D1Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn56_N7S3583C9D1Ev,_ZThn32_N7S3583C9D1Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n32_N7S3583C8D0Ev,_ZTv0_n16_N7S3583C8D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn144_N7S3583C8D0Ev,_ZThn76_N7S3583C8D0Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n32_N7S3583C8D1Ev,_ZTv0_n16_N7S3583C8D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn144_N7S3583C8D1Ev,_ZThn76_N7S3583C8D1Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n64_N7S3583C8D0Ev,_ZTv0_n32_N7S3583C8D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn112_N7S3583C8D0Ev,_ZThn60_N7S3583C8D0Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n64_N7S3583C8D1Ev,_ZTv0_n32_N7S3583C8D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn112_N7S3583C8D1Ev,_ZThn60_N7S3583C8D1Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n40_N7S3583C8D0Ev,_ZTv0_n20_N7S3583C8D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn96_N7S3583C8D0Ev,_ZThn52_N7S3583C8D0Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n40_N7S3583C8D1Ev,_ZTv0_n20_N7S3583C8D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn96_N7S3583C8D1Ev,_ZThn52_N7S3583C8D1Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n40_N8S3583C11D0Ev,_ZTv0_n20_N8S3583C11D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn96_N8S3583C11D0Ev,_ZThn52_N8S3583C11D0Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n40_N8S3583C11D1Ev,_ZTv0_n20_N8S3583C11D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn96_N8S3583C11D1Ev,_ZThn52_N8S3583C11D1Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n24_N8S3583C11D0Ev,_ZTv0_n12_N8S3583C11D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn80_N8S3583C11D0Ev,_ZThn44_N8S3583C11D0Ev),
+  (VTBL_ENTRY)_ZN8S3583C11D0Ev,
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n24_N8S3583C11D1Ev,_ZTv0_n12_N8S3583C11D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn80_N8S3583C11D1Ev,_ZThn44_N8S3583C11D1Ev),
+  (VTBL_ENTRY)_ZN8S3583C11D1Ev,
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n24_N7S3583C8D0Ev,_ZTv0_n12_N7S3583C8D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn80_N7S3583C8D0Ev,_ZThn44_N7S3583C8D0Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn72_N7S3583C8D0Ev,_ZThn40_N7S3583C8D0Ev),
+  (VTBL_ENTRY)_ZN7S3583C8D0Ev,
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n24_N7S3583C8D1Ev,_ZTv0_n12_N7S3583C8D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn80_N7S3583C8D1Ev,_ZThn44_N7S3583C8D1Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn72_N7S3583C8D1Ev,_ZThn40_N7S3583C8D1Ev),
+  (VTBL_ENTRY)_ZN7S3583C8D1Ev,
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n24_N7S3583C3D0Ev,_ZTv0_n12_N7S3583C3D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn24_N7S3583C3D0Ev,_ZThn12_N7S3583C3D0Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn104_N7S3583C3D0Ev,_ZThn56_N7S3583C3D0Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn96_N7S3583C3D0Ev,_ZThn52_N7S3583C3D0Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n24_N7S3583C3D1Ev,_ZTv0_n12_N7S3583C3D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn24_N7S3583C3D1Ev,_ZThn12_N7S3583C3D1Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn104_N7S3583C3D1Ev,_ZThn56_N7S3583C3D1Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn96_N7S3583C3D1Ev,_ZThn52_N7S3583C3D1Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n24_N7S3583C5D0Ev,_ZTv0_n12_N7S3583C5D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn24_N7S3583C5D0Ev,_ZThn12_N7S3583C5D0Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn104_N7S3583C5D0Ev,_ZThn56_N7S3583C5D0Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n24_N7S3583C5D1Ev,_ZTv0_n12_N7S3583C5D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn24_N7S3583C5D1Ev,_ZThn12_N7S3583C5D1Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn104_N7S3583C5D1Ev,_ZThn56_N7S3583C5D1Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n72_N7S3583C2D0Ev,_ZTv0_n36_N7S3583C2D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn184_N7S3583C2D0Ev,_ZThn96_N7S3583C2D0Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n72_N7S3583C2D1Ev,_ZTv0_n36_N7S3583C2D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn184_N7S3583C2D1Ev,_ZThn96_N7S3583C2D1Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n32_N7S3583C2D0Ev,_ZTv0_n16_N7S3583C2D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn168_N7S3583C2D0Ev,_ZThn88_N7S3583C2D0Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n32_N7S3583C2D1Ev,_ZTv0_n16_N7S3583C2D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn168_N7S3583C2D1Ev,_ZThn88_N7S3583C2D1Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n64_N7S3583C2D0Ev,_ZTv0_n32_N7S3583C2D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn136_N7S3583C2D0Ev,_ZThn72_N7S3583C2D0Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n64_N7S3583C2D1Ev,_ZTv0_n32_N7S3583C2D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn136_N7S3583C2D1Ev,_ZThn72_N7S3583C2D1Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n40_N7S3583C2D0Ev,_ZTv0_n20_N7S3583C2D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn120_N7S3583C2D0Ev,_ZThn64_N7S3583C2D0Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n40_N7S3583C2D1Ev,_ZTv0_n20_N7S3583C2D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn120_N7S3583C2D1Ev,_ZThn64_N7S3583C2D1Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n24_N7S3583C2D0Ev,_ZTv0_n12_N7S3583C2D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn104_N7S3583C2D0Ev,_ZThn56_N7S3583C2D0Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn96_N7S3583C2D0Ev,_ZThn52_N7S3583C2D0Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn24_N7S3583C2D0Ev,_ZThn12_N7S3583C2D0Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n24_N7S3583C2D1Ev,_ZTv0_n12_N7S3583C2D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn104_N7S3583C2D1Ev,_ZThn56_N7S3583C2D1Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn96_N7S3583C2D1Ev,_ZThn52_N7S3583C2D1Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn24_N7S3583C2D1Ev,_ZThn12_N7S3583C2D1Ev),
+  ALT_NAMES_TERMINATOR,
+ALT_NAMES_TERMINATOR};
+Class_Descriptor cd_S3583C2 = {  "S3583C2", // class name
+  bases_S3583C2, 27,
+  &(vtc_S3583C2[0]), // expected_vtbl_contents
+  &(vtt_S3583C2[0]), // expected_vtt_contents
+  ABISELECT(224,116), // object size
+  NSPAIRA(_ZTI7S3583C2),ABISELECT(104,56), //typeinfo_var
+  NSPAIRA(_ZTV7S3583C2),108, //virtual function table var
+  9, // offset into main vftv pointed to by object[0]
+  NSPAIRA(_ZTT7S3583C2),81, //virtual table table var
+  27, // n_initialized_bases
+  1, // has_virtual_bases
+  0, // has_class_type_fields
+  alt_thunk_names9,
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S3583C17  {
+  ::S3583C4_nt s3583c17f0;
+  void  mf3583c17(); // _ZN8S3583C179mf3583c17Ev
+};
+//SIG(-1 S3583C17) C1{ m FC2{ vd m}}
+
+
+void  S3583C17 ::mf3583c17(){}
+
+static void Test_S3583C17()
+{
+  {
+    init_simple_test("S3583C17");
+    S3583C17 lv;
+    check2(sizeof(lv), ABISELECT(8,4), "sizeof(S3583C17)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S3583C17)");
+    check_field_offset(lv, s3583c17f0, 0, "S3583C17.s3583c17f0");
+  }
+}
+static Arrange_To_Call_Me vS3583C17(Test_S3583C17, "S3583C17", ABISELECT(8,4));
+
+#else // __cplusplus
+
+extern VTBL_ENTRY _ZTI8S3583C17[];
+VTBL_ENTRY *P__ZTI8S3583C17 = _ZTI8S3583C17; 
+Class_Descriptor cd_S3583C17 = {  "S3583C17", // class name
+  0,0,//no base classes
+  0, // no vftv
+  0, //no vtt
+  ABISELECT(8,4), // object size
+  NSPAIRA(_ZTI8S3583C17),ABISELECT(16,8), //typeinfo_var
+  {0,0},0, // virtual function table var
+  2, // offset into main vftv pointed to by object[0]
+  {0,0},0, // virtual table table var
+  0, // n_initialized_bases
+  0, // has_virtual_bases
+  1, // has_class_type_fields
+  0, // alt-thunk-names
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S3583C16  : virtual S3583C5 , S3583C17 {
+  virtual  ~S3583C16(); // _ZN8S3583C16D2Ev
+  S3583C16(); // tgen
+};
+//SIG(-1 S3583C16) C1{ VBC2{ VBC3{ vd m Fi} BC4{ vd m} VBC5{ vd m} vd Fi} BC6{ m FC4} vd}
+
+
+ S3583C16 ::~S3583C16(){ note_dtor("S3583C16", this);}
+S3583C16 ::S3583C16(){ note_ctor("S3583C16", this);} // tgen
+
+static void Test_S3583C16()
+{
+  extern Class_Descriptor cd_S3583C16;
+  void *lvp;
+  {
+    ABISELECT(double,int) buf[7];
+    init_test(&cd_S3583C16, buf);
+    S3583C16 *dp, &lv = *(dp=new (buf) S3583C16());
+    lvp = (void*)&lv;
+    check2(sizeof(lv), ABISELECT(48,24), "sizeof(S3583C16)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S3583C16)");
+    check_base_class_offset(lv, (S3583C6_nt*)(S3583C5*), ABISELECT(32,16), "S3583C16");
+    check_base_class_offset(lv, (S3583C4_nt*)(S3583C5*), ABISELECT(16,8), "S3583C16");
+    check_base_class_offset(lv, (S3583C7*)(S3583C5*), 0, "S3583C16");
+    check_base_class_offset(lv, (S3583C5*), ABISELECT(16,8), "S3583C16");
+    check_base_class_offset(lv, (S3583C17*), ABISELECT(8,4), "S3583C16");
+    test_class_info(&lv, &cd_S3583C16);
+    dp->~S3583C16();
+  }
+  Check_Ctor_Dtor_Calls(lvp);
+}
+static Arrange_To_Call_Me vS3583C16(Test_S3583C16, "S3583C16", ABISELECT(48,24));
+
+#else // __cplusplus
+
+extern void _ZN8S3583C16C1Ev();
+extern void _ZN8S3583C16D2Ev();
+Name_Map name_map_S3583C16[] = {
+  NSPAIR(_ZN8S3583C16C1Ev),
+  NSPAIR(_ZN8S3583C16D2Ev),
+  {0,0}
+};
+extern Class_Descriptor cd_S3583C6_nt;
+extern VTBL_ENTRY _ZTI10S3583C6_nt[];
+extern  VTBL_ENTRY _ZTV10S3583C6_nt[];
+extern Class_Descriptor cd_S3583C4_nt;
+extern VTBL_ENTRY _ZTI10S3583C4_nt[];
+extern  VTBL_ENTRY _ZTV10S3583C4_nt[];
+extern Class_Descriptor cd_S3583C7;
+extern VTBL_ENTRY _ZTI7S3583C7[];
+extern  VTBL_ENTRY _ZTV7S3583C7[];
+extern Class_Descriptor cd_S3583C5;
+extern VTBL_ENTRY _ZTI7S3583C5[];
+extern  VTBL_ENTRY _ZTV7S3583C5[];
+extern  VTBL_ENTRY * __attribute__((weak))_ZTT7S3583C5[];
+extern Class_Descriptor cd_S3583C17;
+extern VTBL_ENTRY _ZTI8S3583C17[];
+static Base_Class bases_S3583C16[] = {
+  // ofst, vfto, nneg, vtt_idx, base_vtt_idx, init_seq, direct, virtual
+  {&cd_S3583C6_nt,    ABISELECT(32,16), //bcp->offset
+    15, //bcp->virtual_function_table_offset
+    3, //num_negative_vtable_entries(t, bcp)
+    3, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    1, //init_seq
+    3, //immediately_derived
+  0, 1},
+  {&cd_S3583C4_nt,    ABISELECT(16,8), //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    3, //init_seq
+    3, //immediately_derived
+  0, 0},
+  {&cd_S3583C7,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    3, //num_negative_vtable_entries(t, bcp)
+    4, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    2, //init_seq
+    3, //immediately_derived
+  0, 1},
+  {&cd_S3583C5,    ABISELECT(16,8), //bcp->offset
+    8, //bcp->virtual_function_table_offset
+    5, //num_negative_vtable_entries(t, bcp)
+    2, //bcp->index_in_construction_vtbl_array
+    5, //bcp->base_subarray_index_in_construction_vtbl_array
+    4, //init_seq
+    -1, //immediately_derived
+  1, 1},
+  {&cd_S3583C17,    ABISELECT(8,4), //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    -1, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {0}};
+extern VTBL_ENTRY _ZTI8S3583C16[];
+extern void _ZN8S3583C16D1Ev();
+extern void _ZN8S3583C16D0Ev();
+extern void ABISELECT(_ZTv0_n40_N8S3583C16D1Ev,_ZTv0_n20_N8S3583C16D1Ev)();
+extern void ABISELECT(_ZThn16_N8S3583C16D1Ev,_ZThn8_N8S3583C16D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n40_N8S3583C16D0Ev,_ZTv0_n20_N8S3583C16D0Ev)();
+extern void ABISELECT(_ZThn16_N8S3583C16D0Ev,_ZThn8_N8S3583C16D0Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N8S3583C16D1Ev,_ZTv0_n12_N8S3583C16D1Ev)();
+extern void ABISELECT(_ZThn32_N8S3583C16D1Ev,_ZThn16_N8S3583C16D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N8S3583C16D0Ev,_ZTv0_n12_N8S3583C16D0Ev)();
+extern void ABISELECT(_ZThn32_N8S3583C16D0Ev,_ZThn16_N8S3583C16D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY vtc_S3583C16[] = {
+  0,
+  ABISELECT(32,16),
+  ABISELECT(16,8),
+  0,
+  0,
+  (VTBL_ENTRY)&(_ZTI8S3583C16[0]),
+  (VTBL_ENTRY)&_ZN8S3583C16D1Ev,
+  (VTBL_ENTRY)&_ZN8S3583C16D0Ev,
+  ABISELECT(-16,-8),
+  ABISELECT(-16,-8),
+  ABISELECT(16,8),
+  ABISELECT(-16,-8),
+  (VTBL_ENTRY)&(_ZTI8S3583C16[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n40_N8S3583C16D1Ev,_ZTv0_n20_N8S3583C16D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n40_N8S3583C16D0Ev,_ZTv0_n20_N8S3583C16D0Ev),
+  ABISELECT(-32,-16),
+  ABISELECT(-32,-16),
+  (VTBL_ENTRY)&(_ZTI8S3583C16[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C16D1Ev,_ZTv0_n12_N8S3583C16D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C16D0Ev,_ZTv0_n12_N8S3583C16D0Ev),
+};
+extern VTBL_ENTRY _ZTV8S3583C16[];
+extern void _ZN7S3583C5D1Ev();
+extern void _ZN7S3583C5D0Ev();
+static  VTBL_ENTRY _tg__ZTV7S3583C5__8S3583C16[] = {
+  ABISELECT(-16,-8),
+  ABISELECT(16,8),
+  0,
+  (VTBL_ENTRY)&(_ZTI7S3583C5[0]),
+  (VTBL_ENTRY)&_ZN7S3583C5D1Ev,
+  (VTBL_ENTRY)&_ZN7S3583C5D0Ev,
+};
+extern void ABISELECT(_ZTv0_n24_N7S3583C5D1Ev,_ZTv0_n12_N7S3583C5D1Ev)();
+extern void ABISELECT(_ZThn16_N7S3583C5D1Ev,_ZThn8_N7S3583C5D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N7S3583C5D0Ev,_ZTv0_n12_N7S3583C5D0Ev)();
+extern void ABISELECT(_ZThn16_N7S3583C5D0Ev,_ZThn8_N7S3583C5D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV10S3583C6_nt__7S3583C5__8S3583C16[] = {
+  ABISELECT(-16,-8),
+  ABISELECT(-16,-8),
+  (VTBL_ENTRY)&(_ZTI7S3583C5[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C5D1Ev,_ZTv0_n12_N7S3583C5D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C5D0Ev,_ZTv0_n12_N7S3583C5D0Ev),
+};
+extern void ABISELECT(_ZTv0_n24_N7S3583C5D1Ev,_ZTv0_n12_N7S3583C5D1Ev)();
+extern void ABISELECT(_ZTv0_n24_N7S3583C5D0Ev,_ZTv0_n12_N7S3583C5D0Ev)();
+static  VTBL_ENTRY _tg__ZTV7S3583C7__7S3583C5__8S3583C16[] = {
+  ABISELECT(16,8),
+  ABISELECT(16,8),
+  (VTBL_ENTRY)&(_ZTI7S3583C5[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C5D1Ev,_ZTv0_n12_N7S3583C5D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C5D0Ev,_ZTv0_n12_N7S3583C5D0Ev),
+};
+static  VTT_ENTRY vtt_S3583C16[] = {
+  {&(_ZTV8S3583C16[6]),  6,20},
+  {&(_ZTV8S3583C16[13]),  13,20},
+  {&(_ZTV8S3583C16[18]),  18,20},
+  {&(_ZTV8S3583C16[6]),  6,20},
+  {&(_tg__ZTV7S3583C5__8S3583C16[4]),  4,6},
+  {&(_tg__ZTV10S3583C6_nt__7S3583C5__8S3583C16[3]),  3,5},
+  {&(_tg__ZTV7S3583C7__7S3583C5__8S3583C16[3]),  3,5},
+};
+extern VTBL_ENTRY _ZTI8S3583C16[];
+extern  VTBL_ENTRY _ZTV8S3583C16[];
+extern  VTBL_ENTRY * __attribute__((weak))_ZTT8S3583C16[];
+static VTBL_ENTRY alt_thunk_names10[] = {
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n24_N7S3583C5D0Ev,_ZTv0_n12_N7S3583C5D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn16_N7S3583C5D0Ev,_ZThn8_N7S3583C5D0Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n24_N7S3583C5D1Ev,_ZTv0_n12_N7S3583C5D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn16_N7S3583C5D1Ev,_ZThn8_N7S3583C5D1Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n24_N8S3583C16D0Ev,_ZTv0_n12_N8S3583C16D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn32_N8S3583C16D0Ev,_ZThn16_N8S3583C16D0Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n24_N8S3583C16D1Ev,_ZTv0_n12_N8S3583C16D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn32_N8S3583C16D1Ev,_ZThn16_N8S3583C16D1Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n40_N8S3583C16D0Ev,_ZTv0_n20_N8S3583C16D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn16_N8S3583C16D0Ev,_ZThn8_N8S3583C16D0Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n40_N8S3583C16D1Ev,_ZTv0_n20_N8S3583C16D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn16_N8S3583C16D1Ev,_ZThn8_N8S3583C16D1Ev),
+  ALT_NAMES_TERMINATOR,
+ALT_NAMES_TERMINATOR};
+Class_Descriptor cd_S3583C16 = {  "S3583C16", // class name
+  bases_S3583C16, 5,
+  &(vtc_S3583C16[0]), // expected_vtbl_contents
+  &(vtt_S3583C16[0]), // expected_vtt_contents
+  ABISELECT(48,24), // object size
+  NSPAIRA(_ZTI8S3583C16),ABISELECT(56,32), //typeinfo_var
+  NSPAIRA(_ZTV8S3583C16),20, //virtual function table var
+  6, // offset into main vftv pointed to by object[0]
+  NSPAIRA(_ZTT8S3583C16),7, //virtual table table var
+  4, // n_initialized_bases
+  1, // has_virtual_bases
+  1, // has_class_type_fields
+  alt_thunk_names10,
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S3583C15  : S3583C7 , S3583C13 , virtual S3583C16 , S3583C9 {
+  virtual  ~S3583C15(); // _ZN8S3583C15D2Ev
+  S3583C15(); // tgen
+};
+//SIG(-1 S3583C15) C1{ BC2{ vd m} BC3{ VBC4{ BC5{ vd m} VBC6{ vd m Fi} BC2 vd} VBC2 BC7{ VBC5 BC8{ VBC6 BC5 VBC2 vd Fi} vd Fp} BC6 VBC9{ VBC5 BC2 BC6 VBC8 VBC4 vd Fp} vd v1} VBC10{ VBC8 BC11{ m FC5} vd} BC9 vd}
+
+
+ S3583C15 ::~S3583C15(){ note_dtor("S3583C15", this);}
+S3583C15 ::S3583C15(){ note_ctor("S3583C15", this);} // tgen
+
+static void Test_S3583C15()
+{
+  extern Class_Descriptor cd_S3583C15;
+  void *lvp;
+  {
+    ABISELECT(double,int) buf[24];
+    init_test(&cd_S3583C15, buf);
+    S3583C15 *dp, &lv = *(dp=new (buf) S3583C15());
+    lvp = (void*)&lv;
+    check2(sizeof(lv), ABISELECT(184,92), "sizeof(S3583C15)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S3583C15)");
+    /*is_ambiguous_... S3583C15::S3583C7 */ AMB_check_base_class_offset(lv, (S3583C7*), 0, "S3583C15");
+    check_base_class_offset(lv, (S3583C4_nt*)(S3583C10*), ABISELECT(80,40), "S3583C15");
+    check_base_class_offset(lv, (S3583C6_nt*)(S3583C10*), ABISELECT(96,48), "S3583C15");
+    check_base_class_offset(lv, (S3583C6_nt*)(S3583C5*)(S3583C3*)(S3583C13*), ABISELECT(96,48), "S3583C15");
+    /*is_ambiguous_... S3583C15::S3583C5 */ AMB_check_base_class_offset(lv, (S3583C6_nt*)(S3583C5*), ABISELECT(96,48), "S3583C15");
+    check_base_class_offset(lv, (S3583C7*)(S3583C10*), ABISELECT(88,44), "S3583C15");
+    check_base_class_offset(lv, (S3583C10*)(S3583C13*), ABISELECT(80,40), "S3583C15");
+    /*is_ambiguous_... S3583C15::S3583C9 */ AMB_check_base_class_offset(lv, (S3583C10*)(S3583C9*), ABISELECT(80,40), "S3583C15");
+    /*is_ambiguous_... S3583C15::S3583C9 */ AMB_check_base_class_offset(lv, (S3583C10*)(S3583C9*), ABISELECT(80,40), "S3583C15");
+    /*is_ambiguous_... S3583C13::S3583C7 */ AMB_check_base_class_offset(lv, (S3583C7*)(S3583C13*), ABISELECT(168,84), "S3583C15");
+    check_base_class_offset(lv, (S3583C7*)(S3583C5*)(S3583C3*)(S3583C13*), ABISELECT(168,84), "S3583C15");
+    /*is_ambiguous_... S3583C15::S3583C5 */ AMB_check_base_class_offset(lv, (S3583C7*)(S3583C5*), ABISELECT(168,84), "S3583C15");
+    /*is_ambiguous_... S3583C3::S3583C4_nt */ AMB_check_base_class_offset(lv, (S3583C4_nt*)(S3583C3*)(S3583C13*), ABISELECT(112,56), "S3583C15");
+    /*is_ambiguous_... S3583C15::S3583C9 */ AMB_check_base_class_offset(lv, (S3583C4_nt*)(S3583C9*), ABISELECT(112,56), "S3583C15");
+    /*is_ambiguous_... S3583C15::S3583C9 */ AMB_check_base_class_offset(lv, (S3583C4_nt*)(S3583C9*), ABISELECT(112,56), "S3583C15");
+    check_base_class_offset(lv, (S3583C4_nt*)(S3583C5*)(S3583C3*)(S3583C13*), ABISELECT(8,4), "S3583C15");
+    check_base_class_offset(lv, (S3583C5*)(S3583C3*)(S3583C13*), ABISELECT(8,4), "S3583C15");
+    check_base_class_offset(lv, (S3583C3*)(S3583C13*), ABISELECT(8,4), "S3583C15");
+    /*is_ambiguous_... S3583C13::S3583C6_nt */ AMB_check_base_class_offset(lv, (S3583C6_nt*)(S3583C13*), ABISELECT(32,16), "S3583C15");
+    /*is_ambiguous_... S3583C15::S3583C9 */ AMB_check_base_class_offset(lv, (S3583C7*)(S3583C9*), ABISELECT(120,60), "S3583C15");
+    /*is_ambiguous_... S3583C15::S3583C9 */ AMB_check_base_class_offset(lv, (S3583C6_nt*)(S3583C9*), ABISELECT(128,64), "S3583C15");
+    /*is_ambiguous_... S3583C15::S3583C5 */ AMB_check_base_class_offset(lv, (S3583C4_nt*)(S3583C5*), ABISELECT(152,76), "S3583C15");
+    /*is_ambiguous_... S3583C15::S3583C9 */ AMB_check_base_class_offset(lv, (S3583C5*)(S3583C9*), ABISELECT(152,76), "S3583C15");
+    check_base_class_offset(lv, (S3583C5*)(S3583C16*), ABISELECT(152,76), "S3583C15");
+    /*is_ambiguous_... S3583C15::S3583C9 */ AMB_check_base_class_offset(lv, (S3583C5*)(S3583C9*), ABISELECT(152,76), "S3583C15");
+    check_base_class_offset(lv, (S3583C9*)(S3583C13*), ABISELECT(120,60), "S3583C15");
+    check_base_class_offset(lv, (S3583C13*), ABISELECT(8,4), "S3583C15");
+    check_base_class_offset(lv, (S3583C17*)(S3583C16*), ABISELECT(176,88), "S3583C15");
+    check_base_class_offset(lv, (S3583C16*), ABISELECT(168,84), "S3583C15");
+    /*is_ambiguous_... S3583C15::S3583C9 */ AMB_check_base_class_offset(lv, (S3583C7*)(S3583C9*), ABISELECT(48,24), "S3583C15");
+    /*is_ambiguous_... S3583C15::S3583C9 */ AMB_check_base_class_offset(lv, (S3583C6_nt*)(S3583C9*), ABISELECT(56,28), "S3583C15");
+    /*is_ambiguous_... S3583C15::S3583C9 */ AMB_check_base_class_offset(lv, (S3583C9*), ABISELECT(48,24), "S3583C15");
+    test_class_info(&lv, &cd_S3583C15);
+    dp->~S3583C15();
+  }
+  Check_Ctor_Dtor_Calls(lvp);
+}
+static Arrange_To_Call_Me vS3583C15(Test_S3583C15, "S3583C15", ABISELECT(184,92));
+
+#else // __cplusplus
+
+extern void _ZN8S3583C15C1Ev();
+extern void _ZN8S3583C15D2Ev();
+Name_Map name_map_S3583C15[] = {
+  NSPAIR(_ZN8S3583C15C1Ev),
+  NSPAIR(_ZN8S3583C15D2Ev),
+  {0,0}
+};
+extern Class_Descriptor cd_S3583C7;
+extern VTBL_ENTRY _ZTI7S3583C7[];
+extern  VTBL_ENTRY _ZTV7S3583C7[];
+extern Class_Descriptor cd_S3583C4_nt;
+extern VTBL_ENTRY _ZTI10S3583C4_nt[];
+extern  VTBL_ENTRY _ZTV10S3583C4_nt[];
+extern Class_Descriptor cd_S3583C6_nt;
+extern VTBL_ENTRY _ZTI10S3583C6_nt[];
+extern  VTBL_ENTRY _ZTV10S3583C6_nt[];
+extern Class_Descriptor cd_S3583C7;
+extern VTBL_ENTRY _ZTI7S3583C7[];
+extern  VTBL_ENTRY _ZTV7S3583C7[];
+extern Class_Descriptor cd_S3583C10;
+extern VTBL_ENTRY _ZTI8S3583C10[];
+extern  VTBL_ENTRY _ZTV8S3583C10[];
+extern  VTBL_ENTRY * __attribute__((weak))_ZTT8S3583C10[];
+extern Class_Descriptor cd_S3583C7;
+extern VTBL_ENTRY _ZTI7S3583C7[];
+extern  VTBL_ENTRY _ZTV7S3583C7[];
+extern Class_Descriptor cd_S3583C4_nt;
+extern VTBL_ENTRY _ZTI10S3583C4_nt[];
+extern  VTBL_ENTRY _ZTV10S3583C4_nt[];
+extern Class_Descriptor cd_S3583C4_nt;
+extern VTBL_ENTRY _ZTI10S3583C4_nt[];
+extern  VTBL_ENTRY _ZTV10S3583C4_nt[];
+extern Class_Descriptor cd_S3583C5;
+extern VTBL_ENTRY _ZTI7S3583C5[];
+extern  VTBL_ENTRY _ZTV7S3583C5[];
+extern  VTBL_ENTRY * __attribute__((weak))_ZTT7S3583C5[];
+extern Class_Descriptor cd_S3583C3;
+extern VTBL_ENTRY _ZTI7S3583C3[];
+extern  VTBL_ENTRY _ZTV7S3583C3[];
+extern  VTBL_ENTRY * __attribute__((weak))_ZTT7S3583C3[];
+extern Class_Descriptor cd_S3583C6_nt;
+extern VTBL_ENTRY _ZTI10S3583C6_nt[];
+extern  VTBL_ENTRY _ZTV10S3583C6_nt[];
+extern Class_Descriptor cd_S3583C7;
+extern VTBL_ENTRY _ZTI7S3583C7[];
+extern  VTBL_ENTRY _ZTV7S3583C7[];
+extern Class_Descriptor cd_S3583C6_nt;
+extern VTBL_ENTRY _ZTI10S3583C6_nt[];
+extern  VTBL_ENTRY _ZTV10S3583C6_nt[];
+extern Class_Descriptor cd_S3583C4_nt;
+extern VTBL_ENTRY _ZTI10S3583C4_nt[];
+extern  VTBL_ENTRY _ZTV10S3583C4_nt[];
+extern Class_Descriptor cd_S3583C5;
+extern VTBL_ENTRY _ZTI7S3583C5[];
+extern  VTBL_ENTRY _ZTV7S3583C5[];
+extern  VTBL_ENTRY * __attribute__((weak))_ZTT7S3583C5[];
+extern Class_Descriptor cd_S3583C9;
+extern VTBL_ENTRY _ZTI7S3583C9[];
+extern  VTBL_ENTRY _ZTV7S3583C9[];
+extern  VTBL_ENTRY * __attribute__((weak))_ZTT7S3583C9[];
+extern Class_Descriptor cd_S3583C13;
+extern VTBL_ENTRY _ZTI8S3583C13[];
+extern  VTBL_ENTRY _ZTV8S3583C13[];
+extern  VTBL_ENTRY * __attribute__((weak))_ZTT8S3583C13[];
+extern Class_Descriptor cd_S3583C17;
+extern VTBL_ENTRY _ZTI8S3583C17[];
+extern Class_Descriptor cd_S3583C16;
+extern VTBL_ENTRY _ZTI8S3583C16[];
+extern  VTBL_ENTRY _ZTV8S3583C16[];
+extern  VTBL_ENTRY * __attribute__((weak))_ZTT8S3583C16[];
+extern Class_Descriptor cd_S3583C7;
+extern VTBL_ENTRY _ZTI7S3583C7[];
+extern  VTBL_ENTRY _ZTV7S3583C7[];
+extern Class_Descriptor cd_S3583C6_nt;
+extern VTBL_ENTRY _ZTI10S3583C6_nt[];
+extern  VTBL_ENTRY _ZTV10S3583C6_nt[];
+extern Class_Descriptor cd_S3583C9;
+extern VTBL_ENTRY _ZTI7S3583C9[];
+extern  VTBL_ENTRY _ZTV7S3583C9[];
+extern  VTBL_ENTRY * __attribute__((weak))_ZTT7S3583C9[];
+static Base_Class bases_S3583C15[] = {
+  // ofst, vfto, nneg, vtt_idx, base_vtt_idx, init_seq, direct, virtual
+  {&cd_S3583C7,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    13, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {&cd_S3583C4_nt,    ABISELECT(80,40), //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    2, //init_seq
+    4, //immediately_derived
+  0, 0},
+  {&cd_S3583C6_nt,    ABISELECT(96,48), //bcp->offset
+    49, //bcp->virtual_function_table_offset
+    3, //num_negative_vtable_entries(t, bcp)
+    27, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    1, //init_seq
+    4, //immediately_derived
+  0, 1},
+  {&cd_S3583C7,    ABISELECT(88,44), //bcp->offset
+    45, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    28, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    3, //init_seq
+    4, //immediately_derived
+  0, 0},
+  {&cd_S3583C10,    ABISELECT(80,40), //bcp->offset
+    39, //bcp->virtual_function_table_offset
+    4, //num_negative_vtable_entries(t, bcp)
+    26, //bcp->index_in_construction_vtbl_array
+    36, //bcp->base_subarray_index_in_construction_vtbl_array
+    4, //init_seq
+    15, //immediately_derived
+  0, 1},
+  {&cd_S3583C7,    ABISELECT(168,84), //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    3, //num_negative_vtable_entries(t, bcp)
+    29, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    5, //init_seq
+    8, //immediately_derived
+  0, 1},
+  {&cd_S3583C4_nt,    ABISELECT(112,56), //bcp->offset
+    54, //bcp->virtual_function_table_offset
+    3, //num_negative_vtable_entries(t, bcp)
+    30, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    6, //init_seq
+    9, //immediately_derived
+  0, 1},
+  {&cd_S3583C4_nt,    ABISELECT(8,4), //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    14, //init_seq
+    8, //immediately_derived
+  0, 0},
+  {&cd_S3583C5,    ABISELECT(8,4), //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    4, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    4, //bcp->base_subarray_index_in_construction_vtbl_array
+    15, //init_seq
+    9, //immediately_derived
+  0, 0},
+  {&cd_S3583C3,    ABISELECT(8,4), //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    5, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    3, //bcp->base_subarray_index_in_construction_vtbl_array
+    16, //init_seq
+    16, //immediately_derived
+  0, 0},
+  {&cd_S3583C6_nt,    ABISELECT(32,16), //bcp->offset
+    22, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    17, //init_seq
+    16, //immediately_derived
+  0, 0},
+  {&cd_S3583C7,    ABISELECT(120,60), //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    9, //init_seq
+    15, //immediately_derived
+  0, 0},
+  {&cd_S3583C6_nt,    ABISELECT(128,64), //bcp->offset
+    69, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    32, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    10, //init_seq
+    15, //immediately_derived
+  0, 0},
+  {&cd_S3583C4_nt,    ABISELECT(152,76), //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    7, //init_seq
+    14, //immediately_derived
+  0, 0},
+  {&cd_S3583C5,    ABISELECT(152,76), //bcp->offset
+    73, //bcp->virtual_function_table_offset
+    5, //num_negative_vtable_entries(t, bcp)
+    33, //bcp->index_in_construction_vtbl_array
+    45, //bcp->base_subarray_index_in_construction_vtbl_array
+    8, //init_seq
+    15, //immediately_derived
+  0, 1},
+  {&cd_S3583C9,    ABISELECT(120,60), //bcp->offset
+    59, //bcp->virtual_function_table_offset
+    8, //num_negative_vtable_entries(t, bcp)
+    31, //bcp->index_in_construction_vtbl_array
+    38, //bcp->base_subarray_index_in_construction_vtbl_array
+    11, //init_seq
+    16, //immediately_derived
+  0, 1},
+  {&cd_S3583C13,    ABISELECT(8,4), //bcp->offset
+    11, //bcp->virtual_function_table_offset
+    8, //num_negative_vtable_entries(t, bcp)
+    25, //bcp->index_in_construction_vtbl_array
+    2, //bcp->base_subarray_index_in_construction_vtbl_array
+    18, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {&cd_S3583C17,    ABISELECT(176,88), //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    -1, //init_seq
+    18, //immediately_derived
+  0, 0},
+  {&cd_S3583C16,    ABISELECT(168,84), //bcp->offset
+    80, //bcp->virtual_function_table_offset
+    6, //num_negative_vtable_entries(t, bcp)
+    34, //bcp->index_in_construction_vtbl_array
+    48, //bcp->base_subarray_index_in_construction_vtbl_array
+    12, //init_seq
+    -1, //immediately_derived
+  1, 1},
+  {&cd_S3583C7,    ABISELECT(48,24), //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    19, //init_seq
+    21, //immediately_derived
+  0, 0},
+  {&cd_S3583C6_nt,    ABISELECT(56,28), //bcp->offset
+    35, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    20, //init_seq
+    21, //immediately_derived
+  0, 0},
+  {&cd_S3583C9,    ABISELECT(48,24), //bcp->offset
+    26, //bcp->virtual_function_table_offset
+    7, //num_negative_vtable_entries(t, bcp)
+    35, //bcp->index_in_construction_vtbl_array
+    18, //bcp->base_subarray_index_in_construction_vtbl_array
+    21, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {0}};
+extern VTBL_ENTRY _ZTI8S3583C15[];
+extern void _ZN8S3583C15D1Ev();
+extern void _ZN8S3583C15D0Ev();
+extern void ABISELECT(_ZThn8_N8S3583C15D1Ev,_ZThn4_N8S3583C15D1Ev)();
+extern void ABISELECT(_ZThn8_N8S3583C15D0Ev,_ZThn4_N8S3583C15D0Ev)();
+extern void _ZN8S3583C132v1Ev();
+extern void ABISELECT(_ZThn32_N8S3583C15D1Ev,_ZThn16_N8S3583C15D1Ev)();
+extern void ABISELECT(_ZThn32_N8S3583C15D0Ev,_ZThn16_N8S3583C15D0Ev)();
+extern void ABISELECT(_ZThn48_N8S3583C15D1Ev,_ZThn24_N8S3583C15D1Ev)();
+extern void ABISELECT(_ZThn48_N8S3583C15D0Ev,_ZThn24_N8S3583C15D0Ev)();
+extern void ABISELECT(_ZThn56_N8S3583C15D1Ev,_ZThn28_N8S3583C15D1Ev)();
+extern void ABISELECT(_ZThn56_N8S3583C15D0Ev,_ZThn28_N8S3583C15D0Ev)();
+extern void ABISELECT(_ZTv0_n32_N8S3583C15D1Ev,_ZTv0_n16_N8S3583C15D1Ev)();
+extern void ABISELECT(_ZThn80_N8S3583C15D1Ev,_ZThn40_N8S3583C15D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n32_N8S3583C15D0Ev,_ZTv0_n16_N8S3583C15D0Ev)();
+extern void ABISELECT(_ZThn80_N8S3583C15D0Ev,_ZThn40_N8S3583C15D0Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTvn8_n32_N8S3583C15D1Ev,_ZTvn4_n16_N8S3583C15D1Ev)();
+extern void ABISELECT(_ZTvn8_n32_N8S3583C15D0Ev,_ZTvn4_n16_N8S3583C15D0Ev)();
+extern void ABISELECT(_ZTv0_n24_N8S3583C15D1Ev,_ZTv0_n12_N8S3583C15D1Ev)();
+extern void ABISELECT(_ZThn96_N8S3583C15D1Ev,_ZThn48_N8S3583C15D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N8S3583C15D0Ev,_ZTv0_n12_N8S3583C15D0Ev)();
+extern void ABISELECT(_ZThn96_N8S3583C15D0Ev,_ZThn48_N8S3583C15D0Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N8S3583C15D1Ev,_ZTv0_n12_N8S3583C15D1Ev)();
+extern void ABISELECT(_ZThn112_N8S3583C15D1Ev,_ZThn56_N8S3583C15D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N8S3583C15D0Ev,_ZTv0_n12_N8S3583C15D0Ev)();
+extern void ABISELECT(_ZThn112_N8S3583C15D0Ev,_ZThn56_N8S3583C15D0Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n64_N8S3583C15D1Ev,_ZTv0_n32_N8S3583C15D1Ev)();
+extern void ABISELECT(_ZThn120_N8S3583C15D1Ev,_ZThn60_N8S3583C15D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n64_N8S3583C15D0Ev,_ZTv0_n32_N8S3583C15D0Ev)();
+extern void ABISELECT(_ZThn120_N8S3583C15D0Ev,_ZThn60_N8S3583C15D0Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTvn8_n64_N8S3583C15D1Ev,_ZTvn4_n32_N8S3583C15D1Ev)();
+extern void ABISELECT(_ZTvn8_n64_N8S3583C15D0Ev,_ZTvn4_n32_N8S3583C15D0Ev)();
+extern void ABISELECT(_ZTv0_n40_N8S3583C15D1Ev,_ZTv0_n20_N8S3583C15D1Ev)();
+extern void ABISELECT(_ZThn152_N8S3583C15D1Ev,_ZThn76_N8S3583C15D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n40_N8S3583C15D0Ev,_ZTv0_n20_N8S3583C15D0Ev)();
+extern void ABISELECT(_ZThn152_N8S3583C15D0Ev,_ZThn76_N8S3583C15D0Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N8S3583C15D1Ev,_ZTv0_n12_N8S3583C15D1Ev)();
+extern void ABISELECT(_ZThn168_N8S3583C15D1Ev,_ZThn84_N8S3583C15D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N8S3583C15D0Ev,_ZTv0_n12_N8S3583C15D0Ev)();
+extern void ABISELECT(_ZThn168_N8S3583C15D0Ev,_ZThn84_N8S3583C15D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY vtc_S3583C15[] = {
+  ABISELECT(168,84),
+  ABISELECT(152,76),
+  ABISELECT(120,60),
+  ABISELECT(112,56),
+  ABISELECT(168,84),
+  ABISELECT(96,48),
+  ABISELECT(80,40),
+  0,
+  (VTBL_ENTRY)&(_ZTI8S3583C15[0]),
+  (VTBL_ENTRY)&_ZN8S3583C15D1Ev,
+  (VTBL_ENTRY)&_ZN8S3583C15D0Ev,
+  ABISELECT(144,72),
+  ABISELECT(112,56),
+  ABISELECT(72,36),
+  ABISELECT(104,52),
+  ABISELECT(160,80),
+  ABISELECT(88,44),
+  ABISELECT(-8,-4),
+  (VTBL_ENTRY)&(_ZTI8S3583C15[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZThn8_N8S3583C15D1Ev,_ZThn4_N8S3583C15D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZThn8_N8S3583C15D0Ev,_ZThn4_N8S3583C15D0Ev),
+  (VTBL_ENTRY)&_ZN8S3583C132v1Ev,
+  ABISELECT(-32,-16),
+  (VTBL_ENTRY)&(_ZTI8S3583C15[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZThn32_N8S3583C15D1Ev,_ZThn16_N8S3583C15D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZThn32_N8S3583C15D0Ev,_ZThn16_N8S3583C15D0Ev),
+  ABISELECT(32,16),
+  ABISELECT(120,60),
+  ABISELECT(48,24),
+  ABISELECT(104,52),
+  ABISELECT(64,32),
+  ABISELECT(-48,-24),
+  (VTBL_ENTRY)&(_ZTI8S3583C15[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZThn48_N8S3583C15D1Ev,_ZThn24_N8S3583C15D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZThn48_N8S3583C15D0Ev,_ZThn24_N8S3583C15D0Ev),
+  ABISELECT(-56,-28),
+  (VTBL_ENTRY)&(_ZTI8S3583C15[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZThn56_N8S3583C15D1Ev,_ZThn28_N8S3583C15D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZThn56_N8S3583C15D0Ev,_ZThn28_N8S3583C15D0Ev),
+  ABISELECT(-80,-40),
+  ABISELECT(16,8),
+  ABISELECT(-80,-40),
+  (VTBL_ENTRY)&(_ZTI8S3583C15[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n32_N8S3583C15D1Ev,_ZTv0_n16_N8S3583C15D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n32_N8S3583C15D0Ev,_ZTv0_n16_N8S3583C15D0Ev),
+  ABISELECT(-88,-44),
+  (VTBL_ENTRY)&(_ZTI8S3583C15[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTvn8_n32_N8S3583C15D1Ev,_ZTvn4_n16_N8S3583C15D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTvn8_n32_N8S3583C15D0Ev,_ZTvn4_n16_N8S3583C15D0Ev),
+  ABISELECT(-96,-48),
+  ABISELECT(-96,-48),
+  (VTBL_ENTRY)&(_ZTI8S3583C15[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C15D1Ev,_ZTv0_n12_N8S3583C15D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C15D0Ev,_ZTv0_n12_N8S3583C15D0Ev),
+  ABISELECT(-112,-56),
+  ABISELECT(-112,-56),
+  (VTBL_ENTRY)&(_ZTI8S3583C15[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C15D1Ev,_ZTv0_n12_N8S3583C15D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C15D0Ev,_ZTv0_n12_N8S3583C15D0Ev),
+  ABISELECT(-120,-60),
+  ABISELECT(-40,-20),
+  ABISELECT(48,24),
+  ABISELECT(-24,-12),
+  ABISELECT(32,16),
+  ABISELECT(-8,-4),
+  ABISELECT(-120,-60),
+  (VTBL_ENTRY)&(_ZTI8S3583C15[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n64_N8S3583C15D1Ev,_ZTv0_n32_N8S3583C15D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n64_N8S3583C15D0Ev,_ZTv0_n32_N8S3583C15D0Ev),
+  ABISELECT(-128,-64),
+  (VTBL_ENTRY)&(_ZTI8S3583C15[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTvn8_n64_N8S3583C15D1Ev,_ZTvn4_n32_N8S3583C15D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTvn8_n64_N8S3583C15D0Ev,_ZTvn4_n32_N8S3583C15D0Ev),
+  ABISELECT(-152,-76),
+  ABISELECT(16,8),
+  ABISELECT(-56,-28),
+  ABISELECT(-152,-76),
+  (VTBL_ENTRY)&(_ZTI8S3583C15[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n40_N8S3583C15D1Ev,_ZTv0_n20_N8S3583C15D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n40_N8S3583C15D0Ev,_ZTv0_n20_N8S3583C15D0Ev),
+  0,
+  ABISELECT(-72,-36),
+  ABISELECT(-16,-8),
+  ABISELECT(-168,-84),
+  ABISELECT(-168,-84),
+  (VTBL_ENTRY)&(_ZTI8S3583C15[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C15D1Ev,_ZTv0_n12_N8S3583C15D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C15D0Ev,_ZTv0_n12_N8S3583C15D0Ev),
+};
+extern VTBL_ENTRY _ZTV8S3583C15[];
+extern void _ZN8S3583C13D1Ev();
+extern void _ZN8S3583C13D0Ev();
+extern void _ZN8S3583C132v1Ev();
+static  VTBL_ENTRY _tg__ZTV8S3583C13__8S3583C15[] = {
+  ABISELECT(144,72),
+  ABISELECT(112,56),
+  ABISELECT(72,36),
+  ABISELECT(104,52),
+  ABISELECT(160,80),
+  ABISELECT(88,44),
+  0,
+  (VTBL_ENTRY)&(_ZTI8S3583C13[0]),
+  (VTBL_ENTRY)&_ZN8S3583C13D1Ev,
+  (VTBL_ENTRY)&_ZN8S3583C13D0Ev,
+  (VTBL_ENTRY)&_ZN8S3583C132v1Ev,
+};
+extern void _ZN7S3583C3D1Ev();
+extern void _ZN7S3583C3D0Ev();
+static  VTBL_ENTRY _tg__ZTV7S3583C38S3583C13__8S3583C15[] = {
+  ABISELECT(104,52),
+  ABISELECT(160,80),
+  ABISELECT(88,44),
+  0,
+  (VTBL_ENTRY)&(_ZTI7S3583C3[0]),
+  (VTBL_ENTRY)&_ZN7S3583C3D1Ev,
+  (VTBL_ENTRY)&_ZN7S3583C3D0Ev,
+};
+extern void _ZN7S3583C5D1Ev();
+extern void _ZN7S3583C5D0Ev();
+static  VTBL_ENTRY _tg__ZTV7S3583C57S3583C38S3583C13__8S3583C15[] = {
+  ABISELECT(160,80),
+  ABISELECT(88,44),
+  0,
+  (VTBL_ENTRY)&(_ZTI7S3583C5[0]),
+  (VTBL_ENTRY)&_ZN7S3583C5D1Ev,
+  (VTBL_ENTRY)&_ZN7S3583C5D0Ev,
+};
+extern void ABISELECT(_ZTv0_n24_N7S3583C5D1Ev,_ZTv0_n12_N7S3583C5D1Ev)();
+extern void ABISELECT(_ZThn88_N7S3583C5D1Ev,_ZThn44_N7S3583C5D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N7S3583C5D0Ev,_ZTv0_n12_N7S3583C5D0Ev)();
+extern void ABISELECT(_ZThn88_N7S3583C5D0Ev,_ZThn44_N7S3583C5D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV10S3583C6_nt__7S3583C57S3583C38S3583C13__8S3583C15[] = {
+  ABISELECT(-88,-44),
+  ABISELECT(-88,-44),
+  (VTBL_ENTRY)&(_ZTI7S3583C5[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C5D1Ev,_ZTv0_n12_N7S3583C5D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C5D0Ev,_ZTv0_n12_N7S3583C5D0Ev),
+};
+extern void ABISELECT(_ZTv0_n24_N7S3583C5D1Ev,_ZTv0_n12_N7S3583C5D1Ev)();
+extern void ABISELECT(_ZThn160_N7S3583C5D1Ev,_ZThn80_N7S3583C5D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N7S3583C5D0Ev,_ZTv0_n12_N7S3583C5D0Ev)();
+extern void ABISELECT(_ZThn160_N7S3583C5D0Ev,_ZThn80_N7S3583C5D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV7S3583C7__7S3583C57S3583C38S3583C13__8S3583C15[] = {
+  ABISELECT(-160,-80),
+  ABISELECT(-160,-80),
+  (VTBL_ENTRY)&(_ZTI7S3583C5[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C5D1Ev,_ZTv0_n12_N7S3583C5D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C5D0Ev,_ZTv0_n12_N7S3583C5D0Ev),
+};
+extern void ABISELECT(_ZTv0_n24_N7S3583C3D1Ev,_ZTv0_n12_N7S3583C3D1Ev)();
+extern void ABISELECT(_ZThn104_N7S3583C3D1Ev,_ZThn52_N7S3583C3D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N7S3583C3D0Ev,_ZTv0_n12_N7S3583C3D0Ev)();
+extern void ABISELECT(_ZThn104_N7S3583C3D0Ev,_ZThn52_N7S3583C3D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV10S3583C4_nt__7S3583C38S3583C13__8S3583C15[] = {
+  ABISELECT(-104,-52),
+  ABISELECT(-104,-52),
+  (VTBL_ENTRY)&(_ZTI7S3583C3[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C3D1Ev,_ZTv0_n12_N7S3583C3D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C3D0Ev,_ZTv0_n12_N7S3583C3D0Ev),
+};
+extern void ABISELECT(_ZTv0_n24_N7S3583C3D1Ev,_ZTv0_n12_N7S3583C3D1Ev)();
+extern void ABISELECT(_ZThn88_N7S3583C3D1Ev,_ZThn44_N7S3583C3D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N7S3583C3D0Ev,_ZTv0_n12_N7S3583C3D0Ev)();
+extern void ABISELECT(_ZThn88_N7S3583C3D0Ev,_ZThn44_N7S3583C3D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV10S3583C6_nt__7S3583C38S3583C13__8S3583C15[] = {
+  ABISELECT(-88,-44),
+  ABISELECT(-88,-44),
+  (VTBL_ENTRY)&(_ZTI7S3583C3[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C3D1Ev,_ZTv0_n12_N7S3583C3D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C3D0Ev,_ZTv0_n12_N7S3583C3D0Ev),
+};
+extern void ABISELECT(_ZTv0_n24_N7S3583C3D1Ev,_ZTv0_n12_N7S3583C3D1Ev)();
+extern void ABISELECT(_ZThn160_N7S3583C3D1Ev,_ZThn80_N7S3583C3D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N7S3583C3D0Ev,_ZTv0_n12_N7S3583C3D0Ev)();
+extern void ABISELECT(_ZThn160_N7S3583C3D0Ev,_ZThn80_N7S3583C3D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV7S3583C7__7S3583C38S3583C13__8S3583C15[] = {
+  ABISELECT(-160,-80),
+  ABISELECT(-160,-80),
+  (VTBL_ENTRY)&(_ZTI7S3583C3[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C3D1Ev,_ZTv0_n12_N7S3583C3D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C3D0Ev,_ZTv0_n12_N7S3583C3D0Ev),
+};
+extern void ABISELECT(_ZTv0_n32_N8S3583C13D1Ev,_ZTv0_n16_N8S3583C13D1Ev)();
+extern void ABISELECT(_ZThn72_N8S3583C13D1Ev,_ZThn36_N8S3583C13D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n32_N8S3583C13D0Ev,_ZTv0_n16_N8S3583C13D0Ev)();
+extern void ABISELECT(_ZThn72_N8S3583C13D0Ev,_ZThn36_N8S3583C13D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV8S3583C10__8S3583C13__8S3583C15[] = {
+  ABISELECT(-72,-36),
+  ABISELECT(16,8),
+  ABISELECT(-72,-36),
+  (VTBL_ENTRY)&(_ZTI8S3583C13[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n32_N8S3583C13D1Ev,_ZTv0_n16_N8S3583C13D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n32_N8S3583C13D0Ev,_ZTv0_n16_N8S3583C13D0Ev),
+};
+extern void ABISELECT(_ZTv0_n24_N8S3583C13D1Ev,_ZTv0_n12_N8S3583C13D1Ev)();
+extern void ABISELECT(_ZThn88_N8S3583C13D1Ev,_ZThn44_N8S3583C13D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N8S3583C13D0Ev,_ZTv0_n12_N8S3583C13D0Ev)();
+extern void ABISELECT(_ZThn88_N8S3583C13D0Ev,_ZThn44_N8S3583C13D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV10S3583C6_nt__8S3583C13__8S3583C15[] = {
+  ABISELECT(-88,-44),
+  ABISELECT(-88,-44),
+  (VTBL_ENTRY)&(_ZTI8S3583C13[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C13D1Ev,_ZTv0_n12_N8S3583C13D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C13D0Ev,_ZTv0_n12_N8S3583C13D0Ev),
+};
+extern void ABISELECT(_ZTvn8_n32_N8S3583C13D1Ev,_ZTvn4_n16_N8S3583C13D1Ev)();
+extern void ABISELECT(_ZTvn8_n32_N8S3583C13D0Ev,_ZTvn4_n16_N8S3583C13D0Ev)();
+static  VTBL_ENTRY _tg__ZTV7S3583C78S3583C10__8S3583C13__8S3583C15[] = {
+  ABISELECT(-80,-40),
+  (VTBL_ENTRY)&(_ZTI8S3583C13[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTvn8_n32_N8S3583C13D1Ev,_ZTvn4_n16_N8S3583C13D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTvn8_n32_N8S3583C13D0Ev,_ZTvn4_n16_N8S3583C13D0Ev),
+};
+extern void ABISELECT(_ZTv0_n24_N8S3583C13D1Ev,_ZTv0_n12_N8S3583C13D1Ev)();
+extern void ABISELECT(_ZThn160_N8S3583C13D1Ev,_ZThn80_N8S3583C13D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N8S3583C13D0Ev,_ZTv0_n12_N8S3583C13D0Ev)();
+extern void ABISELECT(_ZThn160_N8S3583C13D0Ev,_ZThn80_N8S3583C13D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV7S3583C7__A1__8S3583C13__8S3583C15[] = {
+  ABISELECT(-160,-80),
+  ABISELECT(-160,-80),
+  (VTBL_ENTRY)&(_ZTI8S3583C13[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C13D1Ev,_ZTv0_n12_N8S3583C13D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C13D0Ev,_ZTv0_n12_N8S3583C13D0Ev),
+};
+extern void ABISELECT(_ZTv0_n24_N8S3583C13D1Ev,_ZTv0_n12_N8S3583C13D1Ev)();
+extern void ABISELECT(_ZThn104_N8S3583C13D1Ev,_ZThn52_N8S3583C13D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N8S3583C13D0Ev,_ZTv0_n12_N8S3583C13D0Ev)();
+extern void ABISELECT(_ZThn104_N8S3583C13D0Ev,_ZThn52_N8S3583C13D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV10S3583C4_nt__A1__8S3583C13__8S3583C15[] = {
+  ABISELECT(-104,-52),
+  ABISELECT(-104,-52),
+  (VTBL_ENTRY)&(_ZTI8S3583C13[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C13D1Ev,_ZTv0_n12_N8S3583C13D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C13D0Ev,_ZTv0_n12_N8S3583C13D0Ev),
+};
+extern void ABISELECT(_ZTv0_n64_N8S3583C13D1Ev,_ZTv0_n32_N8S3583C13D1Ev)();
+extern void ABISELECT(_ZThn112_N8S3583C13D1Ev,_ZThn56_N8S3583C13D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n64_N8S3583C13D0Ev,_ZTv0_n32_N8S3583C13D0Ev)();
+extern void ABISELECT(_ZThn112_N8S3583C13D0Ev,_ZThn56_N8S3583C13D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV7S3583C9__8S3583C13__8S3583C15[] = {
+  ABISELECT(-112,-56),
+  ABISELECT(-40,-20),
+  ABISELECT(48,24),
+  ABISELECT(-24,-12),
+  ABISELECT(32,16),
+  ABISELECT(-8,-4),
+  ABISELECT(-112,-56),
+  (VTBL_ENTRY)&(_ZTI8S3583C13[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n64_N8S3583C13D1Ev,_ZTv0_n32_N8S3583C13D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n64_N8S3583C13D0Ev,_ZTv0_n32_N8S3583C13D0Ev),
+};
+extern void ABISELECT(_ZTvn8_n64_N8S3583C13D1Ev,_ZTvn4_n32_N8S3583C13D1Ev)();
+extern void ABISELECT(_ZTvn8_n64_N8S3583C13D0Ev,_ZTvn4_n32_N8S3583C13D0Ev)();
+static  VTBL_ENTRY _tg__ZTV10S3583C6_nt7S3583C9__A2__8S3583C13__8S3583C15[] = {
+  ABISELECT(-120,-60),
+  (VTBL_ENTRY)&(_ZTI8S3583C13[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTvn8_n64_N8S3583C13D1Ev,_ZTvn4_n32_N8S3583C13D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTvn8_n64_N8S3583C13D0Ev,_ZTvn4_n32_N8S3583C13D0Ev),
+};
+extern void ABISELECT(_ZTv0_n40_N8S3583C13D1Ev,_ZTv0_n20_N8S3583C13D1Ev)();
+extern void ABISELECT(_ZThn144_N8S3583C13D1Ev,_ZThn72_N8S3583C13D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n40_N8S3583C13D0Ev,_ZTv0_n20_N8S3583C13D0Ev)();
+extern void ABISELECT(_ZThn144_N8S3583C13D0Ev,_ZThn72_N8S3583C13D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV7S3583C5__A1__8S3583C13__8S3583C15[] = {
+  ABISELECT(-144,-72),
+  ABISELECT(16,8),
+  ABISELECT(-56,-28),
+  ABISELECT(-144,-72),
+  (VTBL_ENTRY)&(_ZTI8S3583C13[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n40_N8S3583C13D1Ev,_ZTv0_n20_N8S3583C13D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n40_N8S3583C13D0Ev,_ZTv0_n20_N8S3583C13D0Ev),
+};
+extern void _ZN7S3583C9D1Ev();
+extern void _ZN7S3583C9D0Ev();
+static  VTBL_ENTRY _tg__ZTV7S3583C9__A__8S3583C15[] = {
+  ABISELECT(32,16),
+  ABISELECT(120,60),
+  ABISELECT(48,24),
+  ABISELECT(104,52),
+  ABISELECT(64,32),
+  0,
+  (VTBL_ENTRY)&(_ZTI7S3583C9[0]),
+  (VTBL_ENTRY)&_ZN7S3583C9D1Ev,
+  (VTBL_ENTRY)&_ZN7S3583C9D0Ev,
+};
+extern void ABISELECT(_ZTv0_n24_N7S3583C9D1Ev,_ZTv0_n12_N7S3583C9D1Ev)();
+extern void ABISELECT(_ZThn64_N7S3583C9D1Ev,_ZThn32_N7S3583C9D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N7S3583C9D0Ev,_ZTv0_n12_N7S3583C9D0Ev)();
+extern void ABISELECT(_ZThn64_N7S3583C9D0Ev,_ZThn32_N7S3583C9D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV10S3583C4_nt__7S3583C9__A__8S3583C15[] = {
+  ABISELECT(-64,-32),
+  ABISELECT(-64,-32),
+  (VTBL_ENTRY)&(_ZTI7S3583C9[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C9D1Ev,_ZTv0_n12_N7S3583C9D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C9D0Ev,_ZTv0_n12_N7S3583C9D0Ev),
+};
+extern void ABISELECT(_ZTv0_n40_N7S3583C9D1Ev,_ZTv0_n20_N7S3583C9D1Ev)();
+extern void ABISELECT(_ZThn104_N7S3583C9D1Ev,_ZThn52_N7S3583C9D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n40_N7S3583C9D0Ev,_ZTv0_n20_N7S3583C9D0Ev)();
+extern void ABISELECT(_ZThn104_N7S3583C9D0Ev,_ZThn52_N7S3583C9D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV7S3583C5__7S3583C9__A__8S3583C15[] = {
+  ABISELECT(-104,-52),
+  ABISELECT(16,8),
+  ABISELECT(-56,-28),
+  ABISELECT(-104,-52),
+  (VTBL_ENTRY)&(_ZTI7S3583C9[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n40_N7S3583C9D1Ev,_ZTv0_n20_N7S3583C9D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n40_N7S3583C9D0Ev,_ZTv0_n20_N7S3583C9D0Ev),
+};
+extern void ABISELECT(_ZTv0_n24_N7S3583C9D1Ev,_ZTv0_n12_N7S3583C9D1Ev)();
+extern void ABISELECT(_ZThn48_N7S3583C9D1Ev,_ZThn24_N7S3583C9D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N7S3583C9D0Ev,_ZTv0_n12_N7S3583C9D0Ev)();
+extern void ABISELECT(_ZThn48_N7S3583C9D0Ev,_ZThn24_N7S3583C9D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV10S3583C6_nt__A1__7S3583C9__A__8S3583C15[] = {
+  ABISELECT(-48,-24),
+  ABISELECT(-48,-24),
+  (VTBL_ENTRY)&(_ZTI7S3583C9[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C9D1Ev,_ZTv0_n12_N7S3583C9D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C9D0Ev,_ZTv0_n12_N7S3583C9D0Ev),
+};
+extern void ABISELECT(_ZTv0_n24_N7S3583C9D1Ev,_ZTv0_n12_N7S3583C9D1Ev)();
+extern void ABISELECT(_ZThn120_N7S3583C9D1Ev,_ZThn60_N7S3583C9D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N7S3583C9D0Ev,_ZTv0_n12_N7S3583C9D0Ev)();
+extern void ABISELECT(_ZThn120_N7S3583C9D0Ev,_ZThn60_N7S3583C9D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV7S3583C7__A1__7S3583C9__A__8S3583C15[] = {
+  ABISELECT(-120,-60),
+  ABISELECT(-120,-60),
+  (VTBL_ENTRY)&(_ZTI7S3583C9[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C9D1Ev,_ZTv0_n12_N7S3583C9D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C9D0Ev,_ZTv0_n12_N7S3583C9D0Ev),
+};
+extern void ABISELECT(_ZTv0_n32_N7S3583C9D1Ev,_ZTv0_n16_N7S3583C9D1Ev)();
+extern void ABISELECT(_ZThn32_N7S3583C9D1Ev,_ZThn16_N7S3583C9D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n32_N7S3583C9D0Ev,_ZTv0_n16_N7S3583C9D0Ev)();
+extern void ABISELECT(_ZThn32_N7S3583C9D0Ev,_ZThn16_N7S3583C9D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV8S3583C10__7S3583C9__A__8S3583C15[] = {
+  ABISELECT(-32,-16),
+  ABISELECT(16,8),
+  ABISELECT(-32,-16),
+  (VTBL_ENTRY)&(_ZTI7S3583C9[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n32_N7S3583C9D1Ev,_ZTv0_n16_N7S3583C9D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n32_N7S3583C9D0Ev,_ZTv0_n16_N7S3583C9D0Ev),
+};
+extern void ABISELECT(_ZTvn8_n32_N7S3583C9D1Ev,_ZTvn4_n16_N7S3583C9D1Ev)();
+extern void ABISELECT(_ZTvn8_n32_N7S3583C9D0Ev,_ZTvn4_n16_N7S3583C9D0Ev)();
+static  VTBL_ENTRY _tg__ZTV7S3583C78S3583C10__A2__7S3583C9__A__8S3583C15[] = {
+  ABISELECT(-40,-20),
+  (VTBL_ENTRY)&(_ZTI7S3583C9[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTvn8_n32_N7S3583C9D1Ev,_ZTvn4_n16_N7S3583C9D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTvn8_n32_N7S3583C9D0Ev,_ZTvn4_n16_N7S3583C9D0Ev),
+};
+extern void _ZN8S3583C10D1Ev();
+extern void _ZN8S3583C10D0Ev();
+static  VTBL_ENTRY _tg__ZTV8S3583C10__8S3583C15[] = {
+  ABISELECT(16,8),
+  0,
+  (VTBL_ENTRY)&(_ZTI8S3583C10[0]),
+  (VTBL_ENTRY)&_ZN8S3583C10D1Ev,
+  (VTBL_ENTRY)&_ZN8S3583C10D0Ev,
+};
+extern void ABISELECT(_ZTv0_n24_N8S3583C10D1Ev,_ZTv0_n12_N8S3583C10D1Ev)();
+extern void ABISELECT(_ZThn16_N8S3583C10D1Ev,_ZThn8_N8S3583C10D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N8S3583C10D0Ev,_ZTv0_n12_N8S3583C10D0Ev)();
+extern void ABISELECT(_ZThn16_N8S3583C10D0Ev,_ZThn8_N8S3583C10D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV10S3583C6_nt__8S3583C10__8S3583C15[] = {
+  ABISELECT(-16,-8),
+  ABISELECT(-16,-8),
+  (VTBL_ENTRY)&(_ZTI8S3583C10[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C10D1Ev,_ZTv0_n12_N8S3583C10D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C10D0Ev,_ZTv0_n12_N8S3583C10D0Ev),
+};
+extern void _ZN7S3583C9D1Ev();
+extern void _ZN7S3583C9D0Ev();
+static  VTBL_ENTRY _tg__ZTV7S3583C9__8S3583C15[] = {
+  ABISELECT(-40,-20),
+  ABISELECT(48,24),
+  ABISELECT(-24,-12),
+  ABISELECT(32,16),
+  ABISELECT(-8,-4),
+  0,
+  (VTBL_ENTRY)&(_ZTI7S3583C9[0]),
+  (VTBL_ENTRY)&_ZN7S3583C9D1Ev,
+  (VTBL_ENTRY)&_ZN7S3583C9D0Ev,
+};
+extern void ABISELECT(_ZTv0_n24_N7S3583C9D1Ev,_ZTv0_n12_N7S3583C9D1Ev)();
+extern void ABISELECT(_ZTv0_n24_N7S3583C9D0Ev,_ZTv0_n12_N7S3583C9D0Ev)();
+static  VTBL_ENTRY _tg__ZTV10S3583C4_nt__7S3583C9__8S3583C15[] = {
+  ABISELECT(8,4),
+  ABISELECT(8,4),
+  (VTBL_ENTRY)&(_ZTI7S3583C9[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C9D1Ev,_ZTv0_n12_N7S3583C9D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C9D0Ev,_ZTv0_n12_N7S3583C9D0Ev),
+};
+extern void ABISELECT(_ZTv0_n40_N7S3583C9D1Ev,_ZTv0_n20_N7S3583C9D1Ev)();
+extern void ABISELECT(_ZThn32_N7S3583C9D1Ev,_ZThn16_N7S3583C9D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n40_N7S3583C9D0Ev,_ZTv0_n20_N7S3583C9D0Ev)();
+extern void ABISELECT(_ZThn32_N7S3583C9D0Ev,_ZThn16_N7S3583C9D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV7S3583C5__7S3583C9__8S3583C15[] = {
+  ABISELECT(-32,-16),
+  ABISELECT(16,8),
+  ABISELECT(-56,-28),
+  ABISELECT(-32,-16),
+  (VTBL_ENTRY)&(_ZTI7S3583C9[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n40_N7S3583C9D1Ev,_ZTv0_n20_N7S3583C9D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n40_N7S3583C9D0Ev,_ZTv0_n20_N7S3583C9D0Ev),
+};
+extern void ABISELECT(_ZTv0_n24_N7S3583C9D1Ev,_ZTv0_n12_N7S3583C9D1Ev)();
+extern void ABISELECT(_ZTv0_n24_N7S3583C9D0Ev,_ZTv0_n12_N7S3583C9D0Ev)();
+static  VTBL_ENTRY _tg__ZTV10S3583C6_nt__A1__7S3583C9__8S3583C15[] = {
+  ABISELECT(24,12),
+  ABISELECT(24,12),
+  (VTBL_ENTRY)&(_ZTI7S3583C9[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C9D1Ev,_ZTv0_n12_N7S3583C9D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C9D0Ev,_ZTv0_n12_N7S3583C9D0Ev),
+};
+extern void ABISELECT(_ZTv0_n24_N7S3583C9D1Ev,_ZTv0_n12_N7S3583C9D1Ev)();
+extern void ABISELECT(_ZThn48_N7S3583C9D1Ev,_ZThn24_N7S3583C9D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N7S3583C9D0Ev,_ZTv0_n12_N7S3583C9D0Ev)();
+extern void ABISELECT(_ZThn48_N7S3583C9D0Ev,_ZThn24_N7S3583C9D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV7S3583C7__A1__7S3583C9__8S3583C15[] = {
+  ABISELECT(-48,-24),
+  ABISELECT(-48,-24),
+  (VTBL_ENTRY)&(_ZTI7S3583C9[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C9D1Ev,_ZTv0_n12_N7S3583C9D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C9D0Ev,_ZTv0_n12_N7S3583C9D0Ev),
+};
+extern void ABISELECT(_ZTv0_n32_N7S3583C9D1Ev,_ZTv0_n16_N7S3583C9D1Ev)();
+extern void ABISELECT(_ZTv0_n32_N7S3583C9D0Ev,_ZTv0_n16_N7S3583C9D0Ev)();
+static  VTBL_ENTRY _tg__ZTV8S3583C10__7S3583C9__8S3583C15[] = {
+  ABISELECT(40,20),
+  ABISELECT(16,8),
+  ABISELECT(40,20),
+  (VTBL_ENTRY)&(_ZTI7S3583C9[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n32_N7S3583C9D1Ev,_ZTv0_n16_N7S3583C9D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n32_N7S3583C9D0Ev,_ZTv0_n16_N7S3583C9D0Ev),
+};
+extern void ABISELECT(_ZTvn8_n32_N7S3583C9D1Ev,_ZTvn4_n16_N7S3583C9D1Ev)();
+extern void ABISELECT(_ZTvn8_n32_N7S3583C9D0Ev,_ZTvn4_n16_N7S3583C9D0Ev)();
+static  VTBL_ENTRY _tg__ZTV7S3583C78S3583C10__A2__7S3583C9__8S3583C15[] = {
+  ABISELECT(32,16),
+  (VTBL_ENTRY)&(_ZTI7S3583C9[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTvn8_n32_N7S3583C9D1Ev,_ZTvn4_n16_N7S3583C9D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTvn8_n32_N7S3583C9D0Ev,_ZTvn4_n16_N7S3583C9D0Ev),
+};
+extern void _ZN7S3583C5D1Ev();
+extern void _ZN7S3583C5D0Ev();
+static  VTBL_ENTRY _tg__ZTV7S3583C5__A1__8S3583C15[] = {
+  ABISELECT(16,8),
+  ABISELECT(-56,-28),
+  0,
+  (VTBL_ENTRY)&(_ZTI7S3583C5[0]),
+  (VTBL_ENTRY)&_ZN7S3583C5D1Ev,
+  (VTBL_ENTRY)&_ZN7S3583C5D0Ev,
+};
+extern void ABISELECT(_ZTv0_n24_N7S3583C5D1Ev,_ZTv0_n12_N7S3583C5D1Ev)();
+extern void ABISELECT(_ZTv0_n24_N7S3583C5D0Ev,_ZTv0_n12_N7S3583C5D0Ev)();
+static  VTBL_ENTRY _tg__ZTV10S3583C6_nt__7S3583C5__A1__8S3583C15[] = {
+  ABISELECT(56,28),
+  ABISELECT(56,28),
+  (VTBL_ENTRY)&(_ZTI7S3583C5[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C5D1Ev,_ZTv0_n12_N7S3583C5D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C5D0Ev,_ZTv0_n12_N7S3583C5D0Ev),
+};
+extern void ABISELECT(_ZTv0_n24_N7S3583C5D1Ev,_ZTv0_n12_N7S3583C5D1Ev)();
+extern void ABISELECT(_ZThn16_N7S3583C5D1Ev,_ZThn8_N7S3583C5D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N7S3583C5D0Ev,_ZTv0_n12_N7S3583C5D0Ev)();
+extern void ABISELECT(_ZThn16_N7S3583C5D0Ev,_ZThn8_N7S3583C5D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV7S3583C7__7S3583C5__A1__8S3583C15[] = {
+  ABISELECT(-16,-8),
+  ABISELECT(-16,-8),
+  (VTBL_ENTRY)&(_ZTI7S3583C5[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C5D1Ev,_ZTv0_n12_N7S3583C5D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C5D0Ev,_ZTv0_n12_N7S3583C5D0Ev),
+};
+extern void ABISELECT(_ZTv0_n24_N8S3583C16D1Ev,_ZTv0_n12_N8S3583C16D1Ev)();
+extern void _ZN8S3583C16D1Ev() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N8S3583C16D0Ev,_ZTv0_n12_N8S3583C16D0Ev)();
+extern void _ZN8S3583C16D0Ev() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV8S3583C16__8S3583C15[] = {
+  0,
+  ABISELECT(-72,-36),
+  ABISELECT(-16,-8),
+  0,
+  0,
+  (VTBL_ENTRY)&(_ZTI8S3583C16[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C16D1Ev,_ZTv0_n12_N8S3583C16D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C16D0Ev,_ZTv0_n12_N8S3583C16D0Ev),
+};
+extern void ABISELECT(_ZTv0_n40_N8S3583C16D1Ev,_ZTv0_n20_N8S3583C16D1Ev)();
+extern void ABISELECT(_ZTv0_n40_N8S3583C16D0Ev,_ZTv0_n20_N8S3583C16D0Ev)();
+static  VTBL_ENTRY _tg__ZTV7S3583C5__8S3583C16__8S3583C15[] = {
+  ABISELECT(16,8),
+  ABISELECT(16,8),
+  ABISELECT(-56,-28),
+  ABISELECT(16,8),
+  (VTBL_ENTRY)&(_ZTI8S3583C16[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n40_N8S3583C16D1Ev,_ZTv0_n20_N8S3583C16D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n40_N8S3583C16D0Ev,_ZTv0_n20_N8S3583C16D0Ev),
+};
+extern void ABISELECT(_ZTv0_n24_N8S3583C16D1Ev,_ZTv0_n12_N8S3583C16D1Ev)();
+extern void ABISELECT(_ZTv0_n24_N8S3583C16D0Ev,_ZTv0_n12_N8S3583C16D0Ev)();
+static  VTBL_ENTRY _tg__ZTV10S3583C6_nt__8S3583C16__8S3583C15[] = {
+  ABISELECT(72,36),
+  ABISELECT(72,36),
+  (VTBL_ENTRY)&(_ZTI8S3583C16[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C16D1Ev,_ZTv0_n12_N8S3583C16D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C16D0Ev,_ZTv0_n12_N8S3583C16D0Ev),
+};
+static  VTT_ENTRY vtt_S3583C15[] = {
+  {&(_ZTV8S3583C15[9]),  9,88},
+  {&(_tg__ZTV8S3583C13__8S3583C15[8]),  8,11},
+  {&(_tg__ZTV7S3583C38S3583C13__8S3583C15[5]),  5,7},
+  {&(_tg__ZTV7S3583C57S3583C38S3583C13__8S3583C15[4]),  4,6},
+  {&(_tg__ZTV10S3583C6_nt__7S3583C57S3583C38S3583C13__8S3583C15[3]),  3,5},
+  {&(_tg__ZTV7S3583C7__7S3583C57S3583C38S3583C13__8S3583C15[3]),  3,5},
+  {&(_tg__ZTV10S3583C4_nt__7S3583C38S3583C13__8S3583C15[3]),  3,5},
+  {&(_tg__ZTV10S3583C6_nt__7S3583C38S3583C13__8S3583C15[3]),  3,5},
+  {&(_tg__ZTV7S3583C7__7S3583C38S3583C13__8S3583C15[3]),  3,5},
+  {&(_tg__ZTV8S3583C10__8S3583C13__8S3583C15[4]),  4,6},
+  {&(_tg__ZTV10S3583C6_nt__8S3583C13__8S3583C15[3]),  3,5},
+  {&(_tg__ZTV7S3583C78S3583C10__8S3583C13__8S3583C15[2]),  2,4},
+  {&(_tg__ZTV7S3583C7__A1__8S3583C13__8S3583C15[3]),  3,5},
+  {&(_tg__ZTV10S3583C4_nt__A1__8S3583C13__8S3583C15[3]),  3,5},
+  {&(_tg__ZTV7S3583C9__8S3583C13__8S3583C15[8]),  8,10},
+  {&(_tg__ZTV10S3583C6_nt7S3583C9__A2__8S3583C13__8S3583C15[2]),  2,4},
+  {&(_tg__ZTV7S3583C5__A1__8S3583C13__8S3583C15[5]),  5,7},
+  {&(_tg__ZTV7S3583C9__A__8S3583C15[7]),  7,9},
+  {&(_tg__ZTV10S3583C4_nt__7S3583C9__A__8S3583C15[3]),  3,5},
+  {&(_tg__ZTV7S3583C5__7S3583C9__A__8S3583C15[5]),  5,7},
+  {&(_tg__ZTV10S3583C6_nt__A1__7S3583C9__A__8S3583C15[3]),  3,5},
+  {&(_tg__ZTV7S3583C7__A1__7S3583C9__A__8S3583C15[3]),  3,5},
+  {&(_tg__ZTV8S3583C10__7S3583C9__A__8S3583C15[4]),  4,6},
+  {&(_tg__ZTV7S3583C78S3583C10__A2__7S3583C9__A__8S3583C15[2]),  2,4},
+  {&(_ZTV8S3583C15[19]),  19,88},
+  {&(_ZTV8S3583C15[43]),  43,88},
+  {&(_ZTV8S3583C15[52]),  52,88},
+  {&(_ZTV8S3583C15[47]),  47,88},
+  {&(_ZTV8S3583C15[86]),  86,88},
+  {&(_ZTV8S3583C15[57]),  57,88},
+  {&(_ZTV8S3583C15[67]),  67,88},
+  {&(_ZTV8S3583C15[71]),  71,88},
+  {&(_ZTV8S3583C15[78]),  78,88},
+  {&(_ZTV8S3583C15[86]),  86,88},
+  {&(_ZTV8S3583C15[33]),  33,88},
+  {&(_tg__ZTV8S3583C10__8S3583C15[3]),  3,5},
+  {&(_tg__ZTV10S3583C6_nt__8S3583C10__8S3583C15[3]),  3,5},
+  {&(_tg__ZTV7S3583C9__8S3583C15[7]),  7,9},
+  {&(_tg__ZTV10S3583C4_nt__7S3583C9__8S3583C15[3]),  3,5},
+  {&(_tg__ZTV7S3583C5__7S3583C9__8S3583C15[5]),  5,7},
+  {&(_tg__ZTV10S3583C6_nt__A1__7S3583C9__8S3583C15[3]),  3,5},
+  {&(_tg__ZTV7S3583C7__A1__7S3583C9__8S3583C15[3]),  3,5},
+  {&(_tg__ZTV8S3583C10__7S3583C9__8S3583C15[4]),  4,6},
+  {&(_tg__ZTV7S3583C78S3583C10__A2__7S3583C9__8S3583C15[2]),  2,4},
+  {&(_tg__ZTV7S3583C5__A1__8S3583C15[4]),  4,6},
+  {&(_tg__ZTV10S3583C6_nt__7S3583C5__A1__8S3583C15[3]),  3,5},
+  {&(_tg__ZTV7S3583C7__7S3583C5__A1__8S3583C15[3]),  3,5},
+  {&(_tg__ZTV8S3583C16__8S3583C15[6]),  6,8},
+  {&(_tg__ZTV7S3583C5__8S3583C16__8S3583C15[5]),  5,7},
+  {&(_tg__ZTV10S3583C6_nt__8S3583C16__8S3583C15[3]),  3,5},
+  {&(_tg__ZTV8S3583C16__8S3583C15[6]),  6,8},
+};
+extern VTBL_ENTRY _ZTI8S3583C15[];
+extern  VTBL_ENTRY _ZTV8S3583C15[];
+extern  VTBL_ENTRY * __attribute__((weak))_ZTT8S3583C15[];
+static VTBL_ENTRY alt_thunk_names11[] = {
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n24_N8S3583C16D0Ev,_ZTv0_n12_N8S3583C16D0Ev), // 
+  (VTBL_ENTRY)_ZN8S3583C16D0Ev,
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n24_N8S3583C16D1Ev,_ZTv0_n12_N8S3583C16D1Ev), // 
+  (VTBL_ENTRY)_ZN8S3583C16D1Ev,
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n24_N8S3583C10D0Ev,_ZTv0_n12_N8S3583C10D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn16_N8S3583C10D0Ev,_ZThn8_N8S3583C10D0Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n24_N8S3583C10D1Ev,_ZTv0_n12_N8S3583C10D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn16_N8S3583C10D1Ev,_ZThn8_N8S3583C10D1Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n32_N7S3583C9D0Ev,_ZTv0_n16_N7S3583C9D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn32_N7S3583C9D0Ev,_ZThn16_N7S3583C9D0Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n32_N7S3583C9D1Ev,_ZTv0_n16_N7S3583C9D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn32_N7S3583C9D1Ev,_ZThn16_N7S3583C9D1Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n40_N7S3583C9D0Ev,_ZTv0_n20_N7S3583C9D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn32_N7S3583C9D0Ev,_ZThn16_N7S3583C9D0Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn104_N7S3583C9D0Ev,_ZThn52_N7S3583C9D0Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n40_N7S3583C9D1Ev,_ZTv0_n20_N7S3583C9D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn32_N7S3583C9D1Ev,_ZThn16_N7S3583C9D1Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn104_N7S3583C9D1Ev,_ZThn52_N7S3583C9D1Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n24_N7S3583C9D0Ev,_ZTv0_n12_N7S3583C9D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn48_N7S3583C9D0Ev,_ZThn24_N7S3583C9D0Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn120_N7S3583C9D0Ev,_ZThn60_N7S3583C9D0Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn48_N7S3583C9D0Ev,_ZThn24_N7S3583C9D0Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn64_N7S3583C9D0Ev,_ZThn32_N7S3583C9D0Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n24_N7S3583C9D1Ev,_ZTv0_n12_N7S3583C9D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn48_N7S3583C9D1Ev,_ZThn24_N7S3583C9D1Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn120_N7S3583C9D1Ev,_ZThn60_N7S3583C9D1Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn48_N7S3583C9D1Ev,_ZThn24_N7S3583C9D1Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn64_N7S3583C9D1Ev,_ZThn32_N7S3583C9D1Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n40_N8S3583C13D0Ev,_ZTv0_n20_N8S3583C13D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn144_N8S3583C13D0Ev,_ZThn72_N8S3583C13D0Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n40_N8S3583C13D1Ev,_ZTv0_n20_N8S3583C13D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn144_N8S3583C13D1Ev,_ZThn72_N8S3583C13D1Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n64_N8S3583C13D0Ev,_ZTv0_n32_N8S3583C13D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn112_N8S3583C13D0Ev,_ZThn56_N8S3583C13D0Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n64_N8S3583C13D1Ev,_ZTv0_n32_N8S3583C13D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn112_N8S3583C13D1Ev,_ZThn56_N8S3583C13D1Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n24_N8S3583C13D0Ev,_ZTv0_n12_N8S3583C13D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn104_N8S3583C13D0Ev,_ZThn52_N8S3583C13D0Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn160_N8S3583C13D0Ev,_ZThn80_N8S3583C13D0Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn88_N8S3583C13D0Ev,_ZThn44_N8S3583C13D0Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n24_N8S3583C13D1Ev,_ZTv0_n12_N8S3583C13D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn104_N8S3583C13D1Ev,_ZThn52_N8S3583C13D1Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn160_N8S3583C13D1Ev,_ZThn80_N8S3583C13D1Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn88_N8S3583C13D1Ev,_ZThn44_N8S3583C13D1Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n32_N8S3583C13D0Ev,_ZTv0_n16_N8S3583C13D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn72_N8S3583C13D0Ev,_ZThn36_N8S3583C13D0Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n32_N8S3583C13D1Ev,_ZTv0_n16_N8S3583C13D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn72_N8S3583C13D1Ev,_ZThn36_N8S3583C13D1Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n24_N7S3583C3D0Ev,_ZTv0_n12_N7S3583C3D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn160_N7S3583C3D0Ev,_ZThn80_N7S3583C3D0Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn88_N7S3583C3D0Ev,_ZThn44_N7S3583C3D0Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn104_N7S3583C3D0Ev,_ZThn52_N7S3583C3D0Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n24_N7S3583C3D1Ev,_ZTv0_n12_N7S3583C3D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn160_N7S3583C3D1Ev,_ZThn80_N7S3583C3D1Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn88_N7S3583C3D1Ev,_ZThn44_N7S3583C3D1Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn104_N7S3583C3D1Ev,_ZThn52_N7S3583C3D1Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n24_N7S3583C5D0Ev,_ZTv0_n12_N7S3583C5D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn16_N7S3583C5D0Ev,_ZThn8_N7S3583C5D0Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn160_N7S3583C5D0Ev,_ZThn80_N7S3583C5D0Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn88_N7S3583C5D0Ev,_ZThn44_N7S3583C5D0Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n24_N7S3583C5D1Ev,_ZTv0_n12_N7S3583C5D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn16_N7S3583C5D1Ev,_ZThn8_N7S3583C5D1Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn160_N7S3583C5D1Ev,_ZThn80_N7S3583C5D1Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn88_N7S3583C5D1Ev,_ZThn44_N7S3583C5D1Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n40_N8S3583C15D0Ev,_ZTv0_n20_N8S3583C15D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn152_N8S3583C15D0Ev,_ZThn76_N8S3583C15D0Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n40_N8S3583C15D1Ev,_ZTv0_n20_N8S3583C15D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn152_N8S3583C15D1Ev,_ZThn76_N8S3583C15D1Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n64_N8S3583C15D0Ev,_ZTv0_n32_N8S3583C15D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn120_N8S3583C15D0Ev,_ZThn60_N8S3583C15D0Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n64_N8S3583C15D1Ev,_ZTv0_n32_N8S3583C15D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn120_N8S3583C15D1Ev,_ZThn60_N8S3583C15D1Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n24_N8S3583C15D0Ev,_ZTv0_n12_N8S3583C15D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn168_N8S3583C15D0Ev,_ZThn84_N8S3583C15D0Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn112_N8S3583C15D0Ev,_ZThn56_N8S3583C15D0Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn96_N8S3583C15D0Ev,_ZThn48_N8S3583C15D0Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n24_N8S3583C15D1Ev,_ZTv0_n12_N8S3583C15D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn168_N8S3583C15D1Ev,_ZThn84_N8S3583C15D1Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn112_N8S3583C15D1Ev,_ZThn56_N8S3583C15D1Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn96_N8S3583C15D1Ev,_ZThn48_N8S3583C15D1Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n32_N8S3583C15D0Ev,_ZTv0_n16_N8S3583C15D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn80_N8S3583C15D0Ev,_ZThn40_N8S3583C15D0Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n32_N8S3583C15D1Ev,_ZTv0_n16_N8S3583C15D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn80_N8S3583C15D1Ev,_ZThn40_N8S3583C15D1Ev),
+  ALT_NAMES_TERMINATOR,
+ALT_NAMES_TERMINATOR};
+Class_Descriptor cd_S3583C15 = {  "S3583C15", // class name
+  bases_S3583C15, 22,
+  &(vtc_S3583C15[0]), // expected_vtbl_contents
+  &(vtt_S3583C15[0]), // expected_vtt_contents
+  ABISELECT(184,92), // object size
+  NSPAIRA(_ZTI8S3583C15),ABISELECT(88,48), //typeinfo_var
+  NSPAIRA(_ZTV8S3583C15),88, //virtual function table var
+  9, // offset into main vftv pointed to by object[0]
+  NSPAIRA(_ZTT8S3583C15),51, //virtual table table var
+  21, // n_initialized_bases
+  1, // has_virtual_bases
+  1, // has_class_type_fields
+  alt_thunk_names11,
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S3583C18  : virtual S3583C6_nt , virtual S3583C4_nt {
+  virtual  ~S3583C18(); // _ZN8S3583C18D2Ev
+  virtual void  v2(); // _ZN8S3583C182v2Ev
+  S3583C18(); // tgen
+};
+//SIG(-1 S3583C18) C1{ VBC2{ vd m Fi} VBC3{ vd m} vd v1}
+
+
+ S3583C18 ::~S3583C18(){ note_dtor("S3583C18", this);}
+void  S3583C18 ::v2(){vfunc_called(this, "_ZN8S3583C182v2Ev");}
+S3583C18 ::S3583C18(){ note_ctor("S3583C18", this);} // tgen
+
+static void Test_S3583C18()
+{
+  extern Class_Descriptor cd_S3583C18;
+  void *lvp;
+  {
+    ABISELECT(double,int) buf[4];
+    init_test(&cd_S3583C18, buf);
+    S3583C18 *dp, &lv = *(dp=new (buf) S3583C18());
+    lvp = (void*)&lv;
+    check2(sizeof(lv), ABISELECT(24,12), "sizeof(S3583C18)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S3583C18)");
+    check_base_class_offset(lv, (S3583C6_nt*), ABISELECT(8,4), "S3583C18");
+    check_base_class_offset(lv, (S3583C4_nt*), 0, "S3583C18");
+    test_class_info(&lv, &cd_S3583C18);
+    dp->~S3583C18();
+  }
+  Check_Ctor_Dtor_Calls(lvp);
+}
+static Arrange_To_Call_Me vS3583C18(Test_S3583C18, "S3583C18", ABISELECT(24,12));
+
+#else // __cplusplus
+
+extern void _ZN8S3583C18C1Ev();
+extern void _ZN8S3583C18D2Ev();
+Name_Map name_map_S3583C18[] = {
+  NSPAIR(_ZN8S3583C18C1Ev),
+  NSPAIR(_ZN8S3583C18D2Ev),
+  {0,0}
+};
+extern Class_Descriptor cd_S3583C6_nt;
+extern VTBL_ENTRY _ZTI10S3583C6_nt[];
+extern  VTBL_ENTRY _ZTV10S3583C6_nt[];
+extern Class_Descriptor cd_S3583C4_nt;
+extern VTBL_ENTRY _ZTI10S3583C4_nt[];
+extern  VTBL_ENTRY _ZTV10S3583C4_nt[];
+static Base_Class bases_S3583C18[] = {
+  // ofst, vfto, nneg, vtt_idx, base_vtt_idx, init_seq, direct, virtual
+  {&cd_S3583C6_nt,    ABISELECT(8,4), //bcp->offset
+    8, //bcp->virtual_function_table_offset
+    3, //num_negative_vtable_entries(t, bcp)
+    2, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    1, //init_seq
+    -1, //immediately_derived
+  1, 1},
+  {&cd_S3583C4_nt,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    3, //num_negative_vtable_entries(t, bcp)
+    3, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    2, //init_seq
+    -1, //immediately_derived
+  1, 1},
+  {0}};
+extern VTBL_ENTRY _ZTI8S3583C18[];
+extern void _ZN8S3583C18D1Ev();
+extern void _ZN8S3583C18D0Ev();
+extern void _ZN8S3583C182v2Ev();
+extern void ABISELECT(_ZTv0_n24_N8S3583C18D1Ev,_ZTv0_n12_N8S3583C18D1Ev)();
+extern void ABISELECT(_ZThn8_N8S3583C18D1Ev,_ZThn4_N8S3583C18D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N8S3583C18D0Ev,_ZTv0_n12_N8S3583C18D0Ev)();
+extern void ABISELECT(_ZThn8_N8S3583C18D0Ev,_ZThn4_N8S3583C18D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY vtc_S3583C18[] = {
+  0,
+  ABISELECT(8,4),
+  0,
+  0,
+  (VTBL_ENTRY)&(_ZTI8S3583C18[0]),
+  (VTBL_ENTRY)&_ZN8S3583C18D1Ev,
+  (VTBL_ENTRY)&_ZN8S3583C18D0Ev,
+  (VTBL_ENTRY)&_ZN8S3583C182v2Ev,
+  ABISELECT(-8,-4),
+  ABISELECT(-8,-4),
+  (VTBL_ENTRY)&(_ZTI8S3583C18[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C18D1Ev,_ZTv0_n12_N8S3583C18D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C18D0Ev,_ZTv0_n12_N8S3583C18D0Ev),
+};
+extern VTBL_ENTRY _ZTV8S3583C18[];
+static  VTT_ENTRY vtt_S3583C18[] = {
+  {&(_ZTV8S3583C18[5]),  5,13},
+  {&(_ZTV8S3583C18[11]),  11,13},
+  {&(_ZTV8S3583C18[5]),  5,13},
+};
+extern VTBL_ENTRY _ZTI8S3583C18[];
+extern  VTBL_ENTRY _ZTV8S3583C18[];
+extern  VTBL_ENTRY * __attribute__((weak))_ZTT8S3583C18[];
+static VTBL_ENTRY alt_thunk_names12[] = {
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n24_N8S3583C18D0Ev,_ZTv0_n12_N8S3583C18D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn8_N8S3583C18D0Ev,_ZThn4_N8S3583C18D0Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n24_N8S3583C18D1Ev,_ZTv0_n12_N8S3583C18D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn8_N8S3583C18D1Ev,_ZThn4_N8S3583C18D1Ev),
+  ALT_NAMES_TERMINATOR,
+ALT_NAMES_TERMINATOR};
+Class_Descriptor cd_S3583C18 = {  "S3583C18", // class name
+  bases_S3583C18, 2,
+  &(vtc_S3583C18[0]), // expected_vtbl_contents
+  &(vtt_S3583C18[0]), // expected_vtt_contents
+  ABISELECT(24,12), // object size
+  NSPAIRA(_ZTI8S3583C18),ABISELECT(56,32), //typeinfo_var
+  NSPAIRA(_ZTV8S3583C18),13, //virtual function table var
+  5, // offset into main vftv pointed to by object[0]
+  NSPAIRA(_ZTT8S3583C18),3, //virtual table table var
+  2, // n_initialized_bases
+  1, // has_virtual_bases
+  0, // has_class_type_fields
+  alt_thunk_names12,
+};
+#endif // __cplusplus
+
+//============================================================================
+
+#ifdef __cplusplus
+
+struct  S3583C24  : S3583C3 , S3583C7 , S3583C15 {
+  ~S3583C24(); // tgen
+  S3583C24(); // tgen
+};
+//SIG(-1 S3583C24) C1{ BC2{ VBC3{ vd m} BC4{ VBC5{ vd m Fi} BC3 VBC6{ vd m} vd Fi} vd Fp} BC6 BC7{ BC6 BC8{ VBC9{ BC3 VBC5 BC6 vd} VBC6 BC2 BC5 VBC10{ VBC3 BC6 BC5 VBC4 VBC9 vd Fp} vd v1} VBC11{ VBC4 BC12{ m FC3} vd} BC10 vd}}
+
+
+S3583C24 ::~S3583C24(){ note_dtor("S3583C24", this);} // tgen
+S3583C24 ::S3583C24(){ note_ctor("S3583C24", this);} // tgen
+
+static void Test_S3583C24()
+{
+  extern Class_Descriptor cd_S3583C24;
+  void *lvp;
+  {
+    ABISELECT(double,int) buf[28];
+    init_test(&cd_S3583C24, buf);
+    S3583C24 *dp, &lv = *(dp=new (buf) S3583C24());
+    lvp = (void*)&lv;
+    check2(sizeof(lv), ABISELECT(216,108), "sizeof(S3583C24)");
+    check2(__alignof__(lv), ABISELECT(8,4), "__alignof__(S3583C24)");
+    /*is_ambiguous_... S3583C24::S3583C3 */ AMB_check_base_class_offset(lv, (S3583C4_nt*)(S3583C3*), ABISELECT(112,56), "S3583C24");
+    /*is_ambiguous_... S3583C3::S3583C4_nt */ AMB_check_base_class_offset(lv, (S3583C4_nt*)(S3583C3*)(S3583C13*)(S3583C15*), ABISELECT(112,56), "S3583C24");
+    /*is_ambiguous_... S3583C24::S3583C9 */ AMB_check_base_class_offset(lv, (S3583C4_nt*)(S3583C9*), ABISELECT(112,56), "S3583C24");
+    /*is_ambiguous_... S3583C15::S3583C9 */ AMB_check_base_class_offset(lv, (S3583C4_nt*)(S3583C9*)(S3583C15*), ABISELECT(112,56), "S3583C24");
+    /*is_ambiguous_... S3583C24::S3583C3 */ AMB_check_base_class_offset(lv, (S3583C6_nt*)(S3583C5*)(S3583C3*), ABISELECT(120,60), "S3583C24");
+    check_base_class_offset(lv, (S3583C6_nt*)(S3583C10*), ABISELECT(120,60), "S3583C24");
+    check_base_class_offset(lv, (S3583C6_nt*)(S3583C5*)(S3583C3*)(S3583C13*)(S3583C15*), ABISELECT(120,60), "S3583C24");
+    /*is_ambiguous_... S3583C24::S3583C5 */ AMB_check_base_class_offset(lv, (S3583C6_nt*)(S3583C5*), ABISELECT(120,60), "S3583C24");
+    /*is_ambiguous_... S3583C24::S3583C3 */ AMB_check_base_class_offset(lv, (S3583C4_nt*)(S3583C5*)(S3583C3*), 0, "S3583C24");
+    /*is_ambiguous_... S3583C24::S3583C3 */ AMB_check_base_class_offset(lv, (S3583C7*)(S3583C5*)(S3583C3*), ABISELECT(200,100), "S3583C24");
+    /*is_ambiguous_... S3583C13::S3583C7 */ AMB_check_base_class_offset(lv, (S3583C7*)(S3583C13*)(S3583C15*), ABISELECT(200,100), "S3583C24");
+    check_base_class_offset(lv, (S3583C7*)(S3583C5*)(S3583C3*)(S3583C13*)(S3583C15*), ABISELECT(200,100), "S3583C24");
+    /*is_ambiguous_... S3583C24::S3583C5 */ AMB_check_base_class_offset(lv, (S3583C7*)(S3583C5*), ABISELECT(200,100), "S3583C24");
+    /*is_ambiguous_... S3583C24::S3583C3 */ AMB_check_base_class_offset(lv, (S3583C5*)(S3583C3*), 0, "S3583C24");
+    /*is_ambiguous_... S3583C24::S3583C3 */ AMB_check_base_class_offset(lv, (S3583C3*), 0, "S3583C24");
+    /*is_ambiguous_... S3583C24::S3583C7 */ AMB_check_base_class_offset(lv, (S3583C7*), ABISELECT(24,12), "S3583C24");
+    /*is_ambiguous_... S3583C15::S3583C7 */ AMB_check_base_class_offset(lv, (S3583C7*)(S3583C15*), ABISELECT(32,16), "S3583C24");
+    check_base_class_offset(lv, (S3583C4_nt*)(S3583C10*), ABISELECT(136,68), "S3583C24");
+    check_base_class_offset(lv, (S3583C7*)(S3583C10*), ABISELECT(144,72), "S3583C24");
+    check_base_class_offset(lv, (S3583C10*)(S3583C13*)(S3583C15*), ABISELECT(136,68), "S3583C24");
+    /*is_ambiguous_... S3583C24::S3583C9 */ AMB_check_base_class_offset(lv, (S3583C10*)(S3583C9*), ABISELECT(136,68), "S3583C24");
+    /*is_ambiguous_... S3583C15::S3583C9 */ AMB_check_base_class_offset(lv, (S3583C10*)(S3583C9*)(S3583C15*), ABISELECT(136,68), "S3583C24");
+    check_base_class_offset(lv, (S3583C4_nt*)(S3583C5*)(S3583C3*)(S3583C13*)(S3583C15*), ABISELECT(40,20), "S3583C24");
+    check_base_class_offset(lv, (S3583C5*)(S3583C3*)(S3583C13*)(S3583C15*), ABISELECT(40,20), "S3583C24");
+    check_base_class_offset(lv, (S3583C3*)(S3583C13*)(S3583C15*), ABISELECT(40,20), "S3583C24");
+    /*is_ambiguous_... S3583C13::S3583C6_nt */ AMB_check_base_class_offset(lv, (S3583C6_nt*)(S3583C13*)(S3583C15*), ABISELECT(64,32), "S3583C24");
+    /*is_ambiguous_... S3583C24::S3583C9 */ AMB_check_base_class_offset(lv, (S3583C7*)(S3583C9*), ABISELECT(152,76), "S3583C24");
+    /*is_ambiguous_... S3583C24::S3583C9 */ AMB_check_base_class_offset(lv, (S3583C6_nt*)(S3583C9*), ABISELECT(160,80), "S3583C24");
+    /*is_ambiguous_... S3583C24::S3583C5 */ AMB_check_base_class_offset(lv, (S3583C4_nt*)(S3583C5*), ABISELECT(184,92), "S3583C24");
+    /*is_ambiguous_... S3583C24::S3583C9 */ AMB_check_base_class_offset(lv, (S3583C5*)(S3583C9*), ABISELECT(184,92), "S3583C24");
+    check_base_class_offset(lv, (S3583C5*)(S3583C16*), ABISELECT(184,92), "S3583C24");
+    /*is_ambiguous_... S3583C15::S3583C9 */ AMB_check_base_class_offset(lv, (S3583C5*)(S3583C9*)(S3583C15*), ABISELECT(184,92), "S3583C24");
+    check_base_class_offset(lv, (S3583C9*)(S3583C13*)(S3583C15*), ABISELECT(152,76), "S3583C24");
+    check_base_class_offset(lv, (S3583C13*)(S3583C15*), ABISELECT(40,20), "S3583C24");
+    check_base_class_offset(lv, (S3583C17*)(S3583C16*), ABISELECT(208,104), "S3583C24");
+    check_base_class_offset(lv, (S3583C16*)(S3583C15*), ABISELECT(200,100), "S3583C24");
+    /*is_ambiguous_... S3583C15::S3583C9 */ AMB_check_base_class_offset(lv, (S3583C7*)(S3583C9*)(S3583C15*), ABISELECT(80,40), "S3583C24");
+    /*is_ambiguous_... S3583C15::S3583C9 */ AMB_check_base_class_offset(lv, (S3583C6_nt*)(S3583C9*)(S3583C15*), ABISELECT(88,44), "S3583C24");
+    /*is_ambiguous_... S3583C15::S3583C9 */ AMB_check_base_class_offset(lv, (S3583C9*)(S3583C15*), ABISELECT(80,40), "S3583C24");
+    check_base_class_offset(lv, (S3583C15*), ABISELECT(32,16), "S3583C24");
+    test_class_info(&lv, &cd_S3583C24);
+    dp->~S3583C24();
+  }
+  Check_Ctor_Dtor_Calls(lvp);
+}
+static Arrange_To_Call_Me vS3583C24(Test_S3583C24, "S3583C24", ABISELECT(216,108));
+
+#else // __cplusplus
+
+extern void _ZN8S3583C24C1Ev();
+extern void _ZN8S3583C24D1Ev();
+Name_Map name_map_S3583C24[] = {
+  NSPAIR(_ZN8S3583C24C1Ev),
+  NSPAIR(_ZN8S3583C24D1Ev),
+  {0,0}
+};
+extern Class_Descriptor cd_S3583C4_nt;
+extern VTBL_ENTRY _ZTI10S3583C4_nt[];
+extern  VTBL_ENTRY _ZTV10S3583C4_nt[];
+extern Class_Descriptor cd_S3583C6_nt;
+extern VTBL_ENTRY _ZTI10S3583C6_nt[];
+extern  VTBL_ENTRY _ZTV10S3583C6_nt[];
+extern Class_Descriptor cd_S3583C4_nt;
+extern VTBL_ENTRY _ZTI10S3583C4_nt[];
+extern  VTBL_ENTRY _ZTV10S3583C4_nt[];
+extern Class_Descriptor cd_S3583C7;
+extern VTBL_ENTRY _ZTI7S3583C7[];
+extern  VTBL_ENTRY _ZTV7S3583C7[];
+extern Class_Descriptor cd_S3583C5;
+extern VTBL_ENTRY _ZTI7S3583C5[];
+extern  VTBL_ENTRY _ZTV7S3583C5[];
+extern  VTBL_ENTRY * __attribute__((weak))_ZTT7S3583C5[];
+extern Class_Descriptor cd_S3583C3;
+extern VTBL_ENTRY _ZTI7S3583C3[];
+extern  VTBL_ENTRY _ZTV7S3583C3[];
+extern  VTBL_ENTRY * __attribute__((weak))_ZTT7S3583C3[];
+extern Class_Descriptor cd_S3583C7;
+extern VTBL_ENTRY _ZTI7S3583C7[];
+extern  VTBL_ENTRY _ZTV7S3583C7[];
+extern Class_Descriptor cd_S3583C7;
+extern VTBL_ENTRY _ZTI7S3583C7[];
+extern  VTBL_ENTRY _ZTV7S3583C7[];
+extern Class_Descriptor cd_S3583C4_nt;
+extern VTBL_ENTRY _ZTI10S3583C4_nt[];
+extern  VTBL_ENTRY _ZTV10S3583C4_nt[];
+extern Class_Descriptor cd_S3583C7;
+extern VTBL_ENTRY _ZTI7S3583C7[];
+extern  VTBL_ENTRY _ZTV7S3583C7[];
+extern Class_Descriptor cd_S3583C10;
+extern VTBL_ENTRY _ZTI8S3583C10[];
+extern  VTBL_ENTRY _ZTV8S3583C10[];
+extern  VTBL_ENTRY * __attribute__((weak))_ZTT8S3583C10[];
+extern Class_Descriptor cd_S3583C4_nt;
+extern VTBL_ENTRY _ZTI10S3583C4_nt[];
+extern  VTBL_ENTRY _ZTV10S3583C4_nt[];
+extern Class_Descriptor cd_S3583C5;
+extern VTBL_ENTRY _ZTI7S3583C5[];
+extern  VTBL_ENTRY _ZTV7S3583C5[];
+extern  VTBL_ENTRY * __attribute__((weak))_ZTT7S3583C5[];
+extern Class_Descriptor cd_S3583C3;
+extern VTBL_ENTRY _ZTI7S3583C3[];
+extern  VTBL_ENTRY _ZTV7S3583C3[];
+extern  VTBL_ENTRY * __attribute__((weak))_ZTT7S3583C3[];
+extern Class_Descriptor cd_S3583C6_nt;
+extern VTBL_ENTRY _ZTI10S3583C6_nt[];
+extern  VTBL_ENTRY _ZTV10S3583C6_nt[];
+extern Class_Descriptor cd_S3583C7;
+extern VTBL_ENTRY _ZTI7S3583C7[];
+extern  VTBL_ENTRY _ZTV7S3583C7[];
+extern Class_Descriptor cd_S3583C6_nt;
+extern VTBL_ENTRY _ZTI10S3583C6_nt[];
+extern  VTBL_ENTRY _ZTV10S3583C6_nt[];
+extern Class_Descriptor cd_S3583C4_nt;
+extern VTBL_ENTRY _ZTI10S3583C4_nt[];
+extern  VTBL_ENTRY _ZTV10S3583C4_nt[];
+extern Class_Descriptor cd_S3583C5;
+extern VTBL_ENTRY _ZTI7S3583C5[];
+extern  VTBL_ENTRY _ZTV7S3583C5[];
+extern  VTBL_ENTRY * __attribute__((weak))_ZTT7S3583C5[];
+extern Class_Descriptor cd_S3583C9;
+extern VTBL_ENTRY _ZTI7S3583C9[];
+extern  VTBL_ENTRY _ZTV7S3583C9[];
+extern  VTBL_ENTRY * __attribute__((weak))_ZTT7S3583C9[];
+extern Class_Descriptor cd_S3583C13;
+extern VTBL_ENTRY _ZTI8S3583C13[];
+extern  VTBL_ENTRY _ZTV8S3583C13[];
+extern  VTBL_ENTRY * __attribute__((weak))_ZTT8S3583C13[];
+extern Class_Descriptor cd_S3583C17;
+extern VTBL_ENTRY _ZTI8S3583C17[];
+extern Class_Descriptor cd_S3583C16;
+extern VTBL_ENTRY _ZTI8S3583C16[];
+extern  VTBL_ENTRY _ZTV8S3583C16[];
+extern  VTBL_ENTRY * __attribute__((weak))_ZTT8S3583C16[];
+extern Class_Descriptor cd_S3583C7;
+extern VTBL_ENTRY _ZTI7S3583C7[];
+extern  VTBL_ENTRY _ZTV7S3583C7[];
+extern Class_Descriptor cd_S3583C6_nt;
+extern VTBL_ENTRY _ZTI10S3583C6_nt[];
+extern  VTBL_ENTRY _ZTV10S3583C6_nt[];
+extern Class_Descriptor cd_S3583C9;
+extern VTBL_ENTRY _ZTI7S3583C9[];
+extern  VTBL_ENTRY _ZTV7S3583C9[];
+extern  VTBL_ENTRY * __attribute__((weak))_ZTT7S3583C9[];
+extern Class_Descriptor cd_S3583C15;
+extern VTBL_ENTRY _ZTI8S3583C15[];
+extern  VTBL_ENTRY _ZTV8S3583C15[];
+extern  VTBL_ENTRY * __attribute__((weak))_ZTT8S3583C15[];
+static Base_Class bases_S3583C24[] = {
+  // ofst, vfto, nneg, vtt_idx, base_vtt_idx, init_seq, direct, virtual
+  {&cd_S3583C4_nt,    ABISELECT(112,56), //bcp->offset
+    54, //bcp->virtual_function_table_offset
+    3, //num_negative_vtable_entries(t, bcp)
+    44, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    1, //init_seq
+    5, //immediately_derived
+  0, 1},
+  {&cd_S3583C6_nt,    ABISELECT(120,60), //bcp->offset
+    59, //bcp->virtual_function_table_offset
+    3, //num_negative_vtable_entries(t, bcp)
+    45, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    2, //init_seq
+    4, //immediately_derived
+  0, 1},
+  {&cd_S3583C4_nt,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    13, //init_seq
+    4, //immediately_derived
+  0, 0},
+  {&cd_S3583C7,    ABISELECT(200,100), //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    3, //num_negative_vtable_entries(t, bcp)
+    46, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    3, //init_seq
+    4, //immediately_derived
+  0, 1},
+  {&cd_S3583C5,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    4, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    3, //bcp->base_subarray_index_in_construction_vtbl_array
+    14, //init_seq
+    5, //immediately_derived
+  0, 0},
+  {&cd_S3583C3,    0, //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    5, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    2, //bcp->base_subarray_index_in_construction_vtbl_array
+    15, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {&cd_S3583C7,    ABISELECT(24,12), //bcp->offset
+    11, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    16, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {&cd_S3583C7,    ABISELECT(32,16), //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    17, //init_seq
+    26, //immediately_derived
+  0, 0},
+  {&cd_S3583C4_nt,    ABISELECT(136,68), //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    4, //init_seq
+    10, //immediately_derived
+  0, 0},
+  {&cd_S3583C7,    ABISELECT(144,72), //bcp->offset
+    70, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    50, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    5, //init_seq
+    10, //immediately_derived
+  0, 0},
+  {&cd_S3583C10,    ABISELECT(136,68), //bcp->offset
+    64, //bcp->virtual_function_table_offset
+    4, //num_negative_vtable_entries(t, bcp)
+    49, //bcp->index_in_construction_vtbl_array
+    56, //bcp->base_subarray_index_in_construction_vtbl_array
+    6, //init_seq
+    19, //immediately_derived
+  0, 1},
+  {&cd_S3583C4_nt,    ABISELECT(40,20), //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    18, //init_seq
+    12, //immediately_derived
+  0, 0},
+  {&cd_S3583C5,    ABISELECT(40,20), //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    4, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    12, //bcp->base_subarray_index_in_construction_vtbl_array
+    19, //init_seq
+    13, //immediately_derived
+  0, 0},
+  {&cd_S3583C3,    ABISELECT(40,20), //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    5, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    11, //bcp->base_subarray_index_in_construction_vtbl_array
+    20, //init_seq
+    20, //immediately_derived
+  0, 0},
+  {&cd_S3583C6_nt,    ABISELECT(64,32), //bcp->offset
+    37, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    21, //init_seq
+    20, //immediately_derived
+  0, 0},
+  {&cd_S3583C7,    ABISELECT(152,76), //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    9, //init_seq
+    19, //immediately_derived
+  0, 0},
+  {&cd_S3583C6_nt,    ABISELECT(160,80), //bcp->offset
+    84, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    52, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    10, //init_seq
+    19, //immediately_derived
+  0, 0},
+  {&cd_S3583C4_nt,    ABISELECT(184,92), //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    7, //init_seq
+    18, //immediately_derived
+  0, 0},
+  {&cd_S3583C5,    ABISELECT(184,92), //bcp->offset
+    88, //bcp->virtual_function_table_offset
+    5, //num_negative_vtable_entries(t, bcp)
+    53, //bcp->index_in_construction_vtbl_array
+    65, //bcp->base_subarray_index_in_construction_vtbl_array
+    8, //init_seq
+    19, //immediately_derived
+  0, 1},
+  {&cd_S3583C9,    ABISELECT(152,76), //bcp->offset
+    74, //bcp->virtual_function_table_offset
+    8, //num_negative_vtable_entries(t, bcp)
+    51, //bcp->index_in_construction_vtbl_array
+    58, //bcp->base_subarray_index_in_construction_vtbl_array
+    11, //init_seq
+    20, //immediately_derived
+  0, 1},
+  {&cd_S3583C13,    ABISELECT(40,20), //bcp->offset
+    26, //bcp->virtual_function_table_offset
+    8, //num_negative_vtable_entries(t, bcp)
+    48, //bcp->index_in_construction_vtbl_array
+    10, //bcp->base_subarray_index_in_construction_vtbl_array
+    22, //init_seq
+    26, //immediately_derived
+  0, 0},
+  {&cd_S3583C17,    ABISELECT(208,104), //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    -1, //init_seq
+    22, //immediately_derived
+  0, 0},
+  {&cd_S3583C16,    ABISELECT(200,100), //bcp->offset
+    95, //bcp->virtual_function_table_offset
+    6, //num_negative_vtable_entries(t, bcp)
+    54, //bcp->index_in_construction_vtbl_array
+    68, //bcp->base_subarray_index_in_construction_vtbl_array
+    12, //init_seq
+    26, //immediately_derived
+  0, 1},
+  {&cd_S3583C7,    ABISELECT(80,40), //bcp->offset
+    -1, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    23, //init_seq
+    25, //immediately_derived
+  0, 0},
+  {&cd_S3583C6_nt,    ABISELECT(88,44), //bcp->offset
+    50, //bcp->virtual_function_table_offset
+    2, //num_negative_vtable_entries(t, bcp)
+    0, //bcp->index_in_construction_vtbl_array
+    0, //bcp->base_subarray_index_in_construction_vtbl_array
+    24, //init_seq
+    25, //immediately_derived
+  0, 0},
+  {&cd_S3583C9,    ABISELECT(80,40), //bcp->offset
+    41, //bcp->virtual_function_table_offset
+    7, //num_negative_vtable_entries(t, bcp)
+    55, //bcp->index_in_construction_vtbl_array
+    26, //bcp->base_subarray_index_in_construction_vtbl_array
+    25, //init_seq
+    26, //immediately_derived
+  0, 0},
+  {&cd_S3583C15,    ABISELECT(32,16), //bcp->offset
+    15, //bcp->virtual_function_table_offset
+    9, //num_negative_vtable_entries(t, bcp)
+    47, //bcp->index_in_construction_vtbl_array
+    9, //bcp->base_subarray_index_in_construction_vtbl_array
+    26, //init_seq
+    -1, //immediately_derived
+  1, 0},
+  {0}};
+extern VTBL_ENTRY _ZTI8S3583C24[];
+extern void _ZN8S3583C24D1Ev();
+extern void _ZN8S3583C24D0Ev();
+extern void ABISELECT(_ZThn24_N8S3583C24D1Ev,_ZThn12_N8S3583C24D1Ev)();
+extern void ABISELECT(_ZThn24_N8S3583C24D0Ev,_ZThn12_N8S3583C24D0Ev)();
+extern void ABISELECT(_ZThn32_N8S3583C24D1Ev,_ZThn16_N8S3583C24D1Ev)();
+extern void ABISELECT(_ZThn32_N8S3583C24D0Ev,_ZThn16_N8S3583C24D0Ev)();
+extern void ABISELECT(_ZThn40_N8S3583C24D1Ev,_ZThn20_N8S3583C24D1Ev)();
+extern void ABISELECT(_ZThn40_N8S3583C24D0Ev,_ZThn20_N8S3583C24D0Ev)();
+extern void _ZN8S3583C132v1Ev();
+extern void ABISELECT(_ZThn64_N8S3583C24D1Ev,_ZThn32_N8S3583C24D1Ev)();
+extern void ABISELECT(_ZThn64_N8S3583C24D0Ev,_ZThn32_N8S3583C24D0Ev)();
+extern void ABISELECT(_ZThn80_N8S3583C24D1Ev,_ZThn40_N8S3583C24D1Ev)();
+extern void ABISELECT(_ZThn80_N8S3583C24D0Ev,_ZThn40_N8S3583C24D0Ev)();
+extern void ABISELECT(_ZThn88_N8S3583C24D1Ev,_ZThn44_N8S3583C24D1Ev)();
+extern void ABISELECT(_ZThn88_N8S3583C24D0Ev,_ZThn44_N8S3583C24D0Ev)();
+extern void ABISELECT(_ZTv0_n24_N8S3583C24D1Ev,_ZTv0_n12_N8S3583C24D1Ev)();
+extern void ABISELECT(_ZThn112_N8S3583C24D1Ev,_ZThn56_N8S3583C24D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N8S3583C24D0Ev,_ZTv0_n12_N8S3583C24D0Ev)();
+extern void ABISELECT(_ZThn112_N8S3583C24D0Ev,_ZThn56_N8S3583C24D0Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N8S3583C24D1Ev,_ZTv0_n12_N8S3583C24D1Ev)();
+extern void ABISELECT(_ZThn120_N8S3583C24D1Ev,_ZThn60_N8S3583C24D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N8S3583C24D0Ev,_ZTv0_n12_N8S3583C24D0Ev)();
+extern void ABISELECT(_ZThn120_N8S3583C24D0Ev,_ZThn60_N8S3583C24D0Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n32_N8S3583C24D1Ev,_ZTv0_n16_N8S3583C24D1Ev)();
+extern void ABISELECT(_ZThn136_N8S3583C24D1Ev,_ZThn68_N8S3583C24D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n32_N8S3583C24D0Ev,_ZTv0_n16_N8S3583C24D0Ev)();
+extern void ABISELECT(_ZThn136_N8S3583C24D0Ev,_ZThn68_N8S3583C24D0Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTvn8_n32_N8S3583C24D1Ev,_ZTvn4_n16_N8S3583C24D1Ev)();
+extern void ABISELECT(_ZTvn8_n32_N8S3583C24D0Ev,_ZTvn4_n16_N8S3583C24D0Ev)();
+extern void ABISELECT(_ZTv0_n64_N8S3583C24D1Ev,_ZTv0_n32_N8S3583C24D1Ev)();
+extern void ABISELECT(_ZThn152_N8S3583C24D1Ev,_ZThn76_N8S3583C24D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n64_N8S3583C24D0Ev,_ZTv0_n32_N8S3583C24D0Ev)();
+extern void ABISELECT(_ZThn152_N8S3583C24D0Ev,_ZThn76_N8S3583C24D0Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTvn8_n64_N8S3583C24D1Ev,_ZTvn4_n32_N8S3583C24D1Ev)();
+extern void ABISELECT(_ZTvn8_n64_N8S3583C24D0Ev,_ZTvn4_n32_N8S3583C24D0Ev)();
+extern void ABISELECT(_ZTv0_n40_N8S3583C24D1Ev,_ZTv0_n20_N8S3583C24D1Ev)();
+extern void ABISELECT(_ZThn184_N8S3583C24D1Ev,_ZThn92_N8S3583C24D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n40_N8S3583C24D0Ev,_ZTv0_n20_N8S3583C24D0Ev)();
+extern void ABISELECT(_ZThn184_N8S3583C24D0Ev,_ZThn92_N8S3583C24D0Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N8S3583C24D1Ev,_ZTv0_n12_N8S3583C24D1Ev)();
+extern void ABISELECT(_ZThn200_N8S3583C24D1Ev,_ZThn100_N8S3583C24D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N8S3583C24D0Ev,_ZTv0_n12_N8S3583C24D0Ev)();
+extern void ABISELECT(_ZThn200_N8S3583C24D0Ev,_ZThn100_N8S3583C24D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY vtc_S3583C24[] = {
+  ABISELECT(200,100),
+  ABISELECT(184,92),
+  ABISELECT(152,76),
+  ABISELECT(136,68),
+  ABISELECT(112,56),
+  ABISELECT(200,100),
+  ABISELECT(120,60),
+  0,
+  (VTBL_ENTRY)&(_ZTI8S3583C24[0]),
+  (VTBL_ENTRY)&_ZN8S3583C24D1Ev,
+  (VTBL_ENTRY)&_ZN8S3583C24D0Ev,
+  ABISELECT(-24,-12),
+  (VTBL_ENTRY)&(_ZTI8S3583C24[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZThn24_N8S3583C24D1Ev,_ZThn12_N8S3583C24D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZThn24_N8S3583C24D0Ev,_ZThn12_N8S3583C24D0Ev),
+  ABISELECT(168,84),
+  ABISELECT(152,76),
+  ABISELECT(120,60),
+  ABISELECT(80,40),
+  ABISELECT(168,84),
+  ABISELECT(88,44),
+  ABISELECT(104,52),
+  ABISELECT(-32,-16),
+  (VTBL_ENTRY)&(_ZTI8S3583C24[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZThn32_N8S3583C24D1Ev,_ZThn16_N8S3583C24D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZThn32_N8S3583C24D0Ev,_ZThn16_N8S3583C24D0Ev),
+  ABISELECT(144,72),
+  ABISELECT(112,56),
+  ABISELECT(96,48),
+  ABISELECT(72,36),
+  ABISELECT(160,80),
+  ABISELECT(80,40),
+  ABISELECT(-40,-20),
+  (VTBL_ENTRY)&(_ZTI8S3583C24[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZThn40_N8S3583C24D1Ev,_ZThn20_N8S3583C24D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZThn40_N8S3583C24D0Ev,_ZThn20_N8S3583C24D0Ev),
+  (VTBL_ENTRY)&_ZN8S3583C132v1Ev,
+  ABISELECT(-64,-32),
+  (VTBL_ENTRY)&(_ZTI8S3583C24[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZThn64_N8S3583C24D1Ev,_ZThn32_N8S3583C24D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZThn64_N8S3583C24D0Ev,_ZThn32_N8S3583C24D0Ev),
+  ABISELECT(56,28),
+  ABISELECT(120,60),
+  ABISELECT(40,20),
+  ABISELECT(104,52),
+  ABISELECT(32,16),
+  ABISELECT(-80,-40),
+  (VTBL_ENTRY)&(_ZTI8S3583C24[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZThn80_N8S3583C24D1Ev,_ZThn40_N8S3583C24D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZThn80_N8S3583C24D0Ev,_ZThn40_N8S3583C24D0Ev),
+  ABISELECT(-88,-44),
+  (VTBL_ENTRY)&(_ZTI8S3583C24[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZThn88_N8S3583C24D1Ev,_ZThn44_N8S3583C24D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZThn88_N8S3583C24D0Ev,_ZThn44_N8S3583C24D0Ev),
+  ABISELECT(-112,-56),
+  ABISELECT(-112,-56),
+  (VTBL_ENTRY)&(_ZTI8S3583C24[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C24D1Ev,_ZTv0_n12_N8S3583C24D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C24D0Ev,_ZTv0_n12_N8S3583C24D0Ev),
+  ABISELECT(-120,-60),
+  ABISELECT(-120,-60),
+  (VTBL_ENTRY)&(_ZTI8S3583C24[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C24D1Ev,_ZTv0_n12_N8S3583C24D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C24D0Ev,_ZTv0_n12_N8S3583C24D0Ev),
+  ABISELECT(-136,-68),
+  ABISELECT(-16,-8),
+  ABISELECT(-136,-68),
+  (VTBL_ENTRY)&(_ZTI8S3583C24[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n32_N8S3583C24D1Ev,_ZTv0_n16_N8S3583C24D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n32_N8S3583C24D0Ev,_ZTv0_n16_N8S3583C24D0Ev),
+  ABISELECT(-144,-72),
+  (VTBL_ENTRY)&(_ZTI8S3583C24[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTvn8_n32_N8S3583C24D1Ev,_ZTvn4_n16_N8S3583C24D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTvn8_n32_N8S3583C24D0Ev,_ZTvn4_n16_N8S3583C24D0Ev),
+  ABISELECT(-152,-76),
+  ABISELECT(-16,-8),
+  ABISELECT(48,24),
+  ABISELECT(-32,-16),
+  ABISELECT(32,16),
+  ABISELECT(-40,-20),
+  ABISELECT(-152,-76),
+  (VTBL_ENTRY)&(_ZTI8S3583C24[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n64_N8S3583C24D1Ev,_ZTv0_n32_N8S3583C24D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n64_N8S3583C24D0Ev,_ZTv0_n32_N8S3583C24D0Ev),
+  ABISELECT(-160,-80),
+  (VTBL_ENTRY)&(_ZTI8S3583C24[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTvn8_n64_N8S3583C24D1Ev,_ZTvn4_n32_N8S3583C24D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTvn8_n64_N8S3583C24D0Ev,_ZTvn4_n32_N8S3583C24D0Ev),
+  ABISELECT(-184,-92),
+  ABISELECT(16,8),
+  ABISELECT(-64,-32),
+  ABISELECT(-184,-92),
+  (VTBL_ENTRY)&(_ZTI8S3583C24[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n40_N8S3583C24D1Ev,_ZTv0_n20_N8S3583C24D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n40_N8S3583C24D0Ev,_ZTv0_n20_N8S3583C24D0Ev),
+  0,
+  ABISELECT(-80,-40),
+  ABISELECT(-16,-8),
+  ABISELECT(-200,-100),
+  ABISELECT(-200,-100),
+  (VTBL_ENTRY)&(_ZTI8S3583C24[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C24D1Ev,_ZTv0_n12_N8S3583C24D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C24D0Ev,_ZTv0_n12_N8S3583C24D0Ev),
+};
+extern VTBL_ENTRY _ZTV8S3583C24[];
+extern void _ZN7S3583C3D1Ev();
+extern void _ZN7S3583C3D0Ev();
+static  VTBL_ENTRY _tg__ZTV7S3583C3__8S3583C24[] = {
+  ABISELECT(112,56),
+  ABISELECT(200,100),
+  ABISELECT(120,60),
+  0,
+  (VTBL_ENTRY)&(_ZTI7S3583C3[0]),
+  (VTBL_ENTRY)&_ZN7S3583C3D1Ev,
+  (VTBL_ENTRY)&_ZN7S3583C3D0Ev,
+};
+extern void _ZN7S3583C5D1Ev();
+extern void _ZN7S3583C5D0Ev();
+static  VTBL_ENTRY _tg__ZTV7S3583C57S3583C3__8S3583C24[] = {
+  ABISELECT(200,100),
+  ABISELECT(120,60),
+  0,
+  (VTBL_ENTRY)&(_ZTI7S3583C5[0]),
+  (VTBL_ENTRY)&_ZN7S3583C5D1Ev,
+  (VTBL_ENTRY)&_ZN7S3583C5D0Ev,
+};
+extern void ABISELECT(_ZTv0_n24_N7S3583C5D1Ev,_ZTv0_n12_N7S3583C5D1Ev)();
+extern void ABISELECT(_ZThn120_N7S3583C5D1Ev,_ZThn60_N7S3583C5D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N7S3583C5D0Ev,_ZTv0_n12_N7S3583C5D0Ev)();
+extern void ABISELECT(_ZThn120_N7S3583C5D0Ev,_ZThn60_N7S3583C5D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV10S3583C6_nt__7S3583C57S3583C3__8S3583C24[] = {
+  ABISELECT(-120,-60),
+  ABISELECT(-120,-60),
+  (VTBL_ENTRY)&(_ZTI7S3583C5[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C5D1Ev,_ZTv0_n12_N7S3583C5D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C5D0Ev,_ZTv0_n12_N7S3583C5D0Ev),
+};
+extern void ABISELECT(_ZTv0_n24_N7S3583C5D1Ev,_ZTv0_n12_N7S3583C5D1Ev)();
+extern void ABISELECT(_ZThn200_N7S3583C5D1Ev,_ZThn100_N7S3583C5D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N7S3583C5D0Ev,_ZTv0_n12_N7S3583C5D0Ev)();
+extern void ABISELECT(_ZThn200_N7S3583C5D0Ev,_ZThn100_N7S3583C5D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV7S3583C7__7S3583C57S3583C3__8S3583C24[] = {
+  ABISELECT(-200,-100),
+  ABISELECT(-200,-100),
+  (VTBL_ENTRY)&(_ZTI7S3583C5[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C5D1Ev,_ZTv0_n12_N7S3583C5D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C5D0Ev,_ZTv0_n12_N7S3583C5D0Ev),
+};
+extern void ABISELECT(_ZTv0_n24_N7S3583C3D1Ev,_ZTv0_n12_N7S3583C3D1Ev)();
+extern void ABISELECT(_ZThn112_N7S3583C3D1Ev,_ZThn56_N7S3583C3D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N7S3583C3D0Ev,_ZTv0_n12_N7S3583C3D0Ev)();
+extern void ABISELECT(_ZThn112_N7S3583C3D0Ev,_ZThn56_N7S3583C3D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV10S3583C4_nt__7S3583C3__8S3583C24[] = {
+  ABISELECT(-112,-56),
+  ABISELECT(-112,-56),
+  (VTBL_ENTRY)&(_ZTI7S3583C3[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C3D1Ev,_ZTv0_n12_N7S3583C3D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C3D0Ev,_ZTv0_n12_N7S3583C3D0Ev),
+};
+extern void ABISELECT(_ZTv0_n24_N7S3583C3D1Ev,_ZTv0_n12_N7S3583C3D1Ev)();
+extern void ABISELECT(_ZThn120_N7S3583C3D1Ev,_ZThn60_N7S3583C3D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N7S3583C3D0Ev,_ZTv0_n12_N7S3583C3D0Ev)();
+extern void ABISELECT(_ZThn120_N7S3583C3D0Ev,_ZThn60_N7S3583C3D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV10S3583C6_nt__7S3583C3__8S3583C24[] = {
+  ABISELECT(-120,-60),
+  ABISELECT(-120,-60),
+  (VTBL_ENTRY)&(_ZTI7S3583C3[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C3D1Ev,_ZTv0_n12_N7S3583C3D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C3D0Ev,_ZTv0_n12_N7S3583C3D0Ev),
+};
+extern void ABISELECT(_ZTv0_n24_N7S3583C3D1Ev,_ZTv0_n12_N7S3583C3D1Ev)();
+extern void ABISELECT(_ZThn200_N7S3583C3D1Ev,_ZThn100_N7S3583C3D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N7S3583C3D0Ev,_ZTv0_n12_N7S3583C3D0Ev)();
+extern void ABISELECT(_ZThn200_N7S3583C3D0Ev,_ZThn100_N7S3583C3D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV7S3583C7__7S3583C3__8S3583C24[] = {
+  ABISELECT(-200,-100),
+  ABISELECT(-200,-100),
+  (VTBL_ENTRY)&(_ZTI7S3583C3[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C3D1Ev,_ZTv0_n12_N7S3583C3D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C3D0Ev,_ZTv0_n12_N7S3583C3D0Ev),
+};
+extern void _ZN8S3583C15D1Ev();
+extern void _ZN8S3583C15D0Ev();
+static  VTBL_ENTRY _tg__ZTV8S3583C15__8S3583C24[] = {
+  ABISELECT(168,84),
+  ABISELECT(152,76),
+  ABISELECT(120,60),
+  ABISELECT(80,40),
+  ABISELECT(168,84),
+  ABISELECT(88,44),
+  ABISELECT(104,52),
+  0,
+  (VTBL_ENTRY)&(_ZTI8S3583C15[0]),
+  (VTBL_ENTRY)&_ZN8S3583C15D1Ev,
+  (VTBL_ENTRY)&_ZN8S3583C15D0Ev,
+};
+extern void _ZN8S3583C13D1Ev();
+extern void _ZN8S3583C13D0Ev();
+extern void _ZN8S3583C132v1Ev();
+static  VTBL_ENTRY _tg__ZTV8S3583C138S3583C15__8S3583C24[] = {
+  ABISELECT(144,72),
+  ABISELECT(112,56),
+  ABISELECT(96,48),
+  ABISELECT(72,36),
+  ABISELECT(160,80),
+  ABISELECT(80,40),
+  0,
+  (VTBL_ENTRY)&(_ZTI8S3583C13[0]),
+  (VTBL_ENTRY)&_ZN8S3583C13D1Ev,
+  (VTBL_ENTRY)&_ZN8S3583C13D0Ev,
+  (VTBL_ENTRY)&_ZN8S3583C132v1Ev,
+};
+extern void _ZN7S3583C3D1Ev();
+extern void _ZN7S3583C3D0Ev();
+static  VTBL_ENTRY _tg__ZTV7S3583C38S3583C138S3583C15__A1__8S3583C24[] = {
+  ABISELECT(72,36),
+  ABISELECT(160,80),
+  ABISELECT(80,40),
+  0,
+  (VTBL_ENTRY)&(_ZTI7S3583C3[0]),
+  (VTBL_ENTRY)&_ZN7S3583C3D1Ev,
+  (VTBL_ENTRY)&_ZN7S3583C3D0Ev,
+};
+extern void _ZN7S3583C5D1Ev();
+extern void _ZN7S3583C5D0Ev();
+static  VTBL_ENTRY _tg__ZTV7S3583C57S3583C38S3583C138S3583C15__A1__8S3583C24[] = {
+  ABISELECT(160,80),
+  ABISELECT(80,40),
+  0,
+  (VTBL_ENTRY)&(_ZTI7S3583C5[0]),
+  (VTBL_ENTRY)&_ZN7S3583C5D1Ev,
+  (VTBL_ENTRY)&_ZN7S3583C5D0Ev,
+};
+extern void ABISELECT(_ZTv0_n24_N7S3583C5D1Ev,_ZTv0_n12_N7S3583C5D1Ev)();
+extern void ABISELECT(_ZThn80_N7S3583C5D1Ev,_ZThn40_N7S3583C5D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N7S3583C5D0Ev,_ZTv0_n12_N7S3583C5D0Ev)();
+extern void ABISELECT(_ZThn80_N7S3583C5D0Ev,_ZThn40_N7S3583C5D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV10S3583C6_nt__7S3583C57S3583C38S3583C138S3583C15__A1__8S3583C24[] = {
+  ABISELECT(-80,-40),
+  ABISELECT(-80,-40),
+  (VTBL_ENTRY)&(_ZTI7S3583C5[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C5D1Ev,_ZTv0_n12_N7S3583C5D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C5D0Ev,_ZTv0_n12_N7S3583C5D0Ev),
+};
+extern void ABISELECT(_ZTv0_n24_N7S3583C5D1Ev,_ZTv0_n12_N7S3583C5D1Ev)();
+extern void ABISELECT(_ZThn160_N7S3583C5D1Ev,_ZThn80_N7S3583C5D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N7S3583C5D0Ev,_ZTv0_n12_N7S3583C5D0Ev)();
+extern void ABISELECT(_ZThn160_N7S3583C5D0Ev,_ZThn80_N7S3583C5D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV7S3583C7__7S3583C57S3583C38S3583C138S3583C15__A1__8S3583C24[] = {
+  ABISELECT(-160,-80),
+  ABISELECT(-160,-80),
+  (VTBL_ENTRY)&(_ZTI7S3583C5[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C5D1Ev,_ZTv0_n12_N7S3583C5D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C5D0Ev,_ZTv0_n12_N7S3583C5D0Ev),
+};
+extern void ABISELECT(_ZTv0_n24_N7S3583C3D1Ev,_ZTv0_n12_N7S3583C3D1Ev)();
+extern void ABISELECT(_ZThn72_N7S3583C3D1Ev,_ZThn36_N7S3583C3D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N7S3583C3D0Ev,_ZTv0_n12_N7S3583C3D0Ev)();
+extern void ABISELECT(_ZThn72_N7S3583C3D0Ev,_ZThn36_N7S3583C3D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV10S3583C4_nt__7S3583C38S3583C138S3583C15__A1__8S3583C24[] = {
+  ABISELECT(-72,-36),
+  ABISELECT(-72,-36),
+  (VTBL_ENTRY)&(_ZTI7S3583C3[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C3D1Ev,_ZTv0_n12_N7S3583C3D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C3D0Ev,_ZTv0_n12_N7S3583C3D0Ev),
+};
+extern void ABISELECT(_ZTv0_n24_N7S3583C3D1Ev,_ZTv0_n12_N7S3583C3D1Ev)();
+extern void ABISELECT(_ZThn80_N7S3583C3D1Ev,_ZThn40_N7S3583C3D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N7S3583C3D0Ev,_ZTv0_n12_N7S3583C3D0Ev)();
+extern void ABISELECT(_ZThn80_N7S3583C3D0Ev,_ZThn40_N7S3583C3D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV10S3583C6_nt__7S3583C38S3583C138S3583C15__A1__8S3583C24[] = {
+  ABISELECT(-80,-40),
+  ABISELECT(-80,-40),
+  (VTBL_ENTRY)&(_ZTI7S3583C3[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C3D1Ev,_ZTv0_n12_N7S3583C3D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C3D0Ev,_ZTv0_n12_N7S3583C3D0Ev),
+};
+extern void ABISELECT(_ZTv0_n24_N7S3583C3D1Ev,_ZTv0_n12_N7S3583C3D1Ev)();
+extern void ABISELECT(_ZThn160_N7S3583C3D1Ev,_ZThn80_N7S3583C3D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N7S3583C3D0Ev,_ZTv0_n12_N7S3583C3D0Ev)();
+extern void ABISELECT(_ZThn160_N7S3583C3D0Ev,_ZThn80_N7S3583C3D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV7S3583C7__7S3583C38S3583C138S3583C15__A1__8S3583C24[] = {
+  ABISELECT(-160,-80),
+  ABISELECT(-160,-80),
+  (VTBL_ENTRY)&(_ZTI7S3583C3[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C3D1Ev,_ZTv0_n12_N7S3583C3D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C3D0Ev,_ZTv0_n12_N7S3583C3D0Ev),
+};
+extern void ABISELECT(_ZTv0_n32_N8S3583C13D1Ev,_ZTv0_n16_N8S3583C13D1Ev)();
+extern void ABISELECT(_ZThn96_N8S3583C13D1Ev,_ZThn48_N8S3583C13D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n32_N8S3583C13D0Ev,_ZTv0_n16_N8S3583C13D0Ev)();
+extern void ABISELECT(_ZThn96_N8S3583C13D0Ev,_ZThn48_N8S3583C13D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV8S3583C10__8S3583C138S3583C15__8S3583C24[] = {
+  ABISELECT(-96,-48),
+  ABISELECT(-16,-8),
+  ABISELECT(-96,-48),
+  (VTBL_ENTRY)&(_ZTI8S3583C13[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n32_N8S3583C13D1Ev,_ZTv0_n16_N8S3583C13D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n32_N8S3583C13D0Ev,_ZTv0_n16_N8S3583C13D0Ev),
+};
+extern void ABISELECT(_ZTv0_n24_N8S3583C13D1Ev,_ZTv0_n12_N8S3583C13D1Ev)();
+extern void ABISELECT(_ZThn80_N8S3583C13D1Ev,_ZThn40_N8S3583C13D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N8S3583C13D0Ev,_ZTv0_n12_N8S3583C13D0Ev)();
+extern void ABISELECT(_ZThn80_N8S3583C13D0Ev,_ZThn40_N8S3583C13D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV10S3583C6_nt__8S3583C138S3583C15__8S3583C24[] = {
+  ABISELECT(-80,-40),
+  ABISELECT(-80,-40),
+  (VTBL_ENTRY)&(_ZTI8S3583C13[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C13D1Ev,_ZTv0_n12_N8S3583C13D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C13D0Ev,_ZTv0_n12_N8S3583C13D0Ev),
+};
+extern void ABISELECT(_ZTvn8_n32_N8S3583C13D1Ev,_ZTvn4_n16_N8S3583C13D1Ev)();
+extern void ABISELECT(_ZTvn8_n32_N8S3583C13D0Ev,_ZTvn4_n16_N8S3583C13D0Ev)();
+static  VTBL_ENTRY _tg__ZTV7S3583C78S3583C10__8S3583C138S3583C15__8S3583C24[] = {
+  ABISELECT(-104,-52),
+  (VTBL_ENTRY)&(_ZTI8S3583C13[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTvn8_n32_N8S3583C13D1Ev,_ZTvn4_n16_N8S3583C13D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTvn8_n32_N8S3583C13D0Ev,_ZTvn4_n16_N8S3583C13D0Ev),
+};
+extern void ABISELECT(_ZTv0_n24_N8S3583C13D1Ev,_ZTv0_n12_N8S3583C13D1Ev)();
+extern void ABISELECT(_ZThn160_N8S3583C13D1Ev,_ZThn80_N8S3583C13D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N8S3583C13D0Ev,_ZTv0_n12_N8S3583C13D0Ev)();
+extern void ABISELECT(_ZThn160_N8S3583C13D0Ev,_ZThn80_N8S3583C13D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV7S3583C7__A1__8S3583C138S3583C15__8S3583C24[] = {
+  ABISELECT(-160,-80),
+  ABISELECT(-160,-80),
+  (VTBL_ENTRY)&(_ZTI8S3583C13[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C13D1Ev,_ZTv0_n12_N8S3583C13D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C13D0Ev,_ZTv0_n12_N8S3583C13D0Ev),
+};
+extern void ABISELECT(_ZTv0_n24_N8S3583C13D1Ev,_ZTv0_n12_N8S3583C13D1Ev)();
+extern void ABISELECT(_ZThn72_N8S3583C13D1Ev,_ZThn36_N8S3583C13D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N8S3583C13D0Ev,_ZTv0_n12_N8S3583C13D0Ev)();
+extern void ABISELECT(_ZThn72_N8S3583C13D0Ev,_ZThn36_N8S3583C13D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV10S3583C4_nt__A1__8S3583C138S3583C15__8S3583C24[] = {
+  ABISELECT(-72,-36),
+  ABISELECT(-72,-36),
+  (VTBL_ENTRY)&(_ZTI8S3583C13[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C13D1Ev,_ZTv0_n12_N8S3583C13D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C13D0Ev,_ZTv0_n12_N8S3583C13D0Ev),
+};
+extern void ABISELECT(_ZTv0_n64_N8S3583C13D1Ev,_ZTv0_n32_N8S3583C13D1Ev)();
+extern void ABISELECT(_ZThn112_N8S3583C13D1Ev,_ZThn56_N8S3583C13D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n64_N8S3583C13D0Ev,_ZTv0_n32_N8S3583C13D0Ev)();
+extern void ABISELECT(_ZThn112_N8S3583C13D0Ev,_ZThn56_N8S3583C13D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV7S3583C9__8S3583C138S3583C15__8S3583C24[] = {
+  ABISELECT(-112,-56),
+  ABISELECT(-16,-8),
+  ABISELECT(48,24),
+  ABISELECT(-32,-16),
+  ABISELECT(32,16),
+  ABISELECT(-40,-20),
+  ABISELECT(-112,-56),
+  (VTBL_ENTRY)&(_ZTI8S3583C13[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n64_N8S3583C13D1Ev,_ZTv0_n32_N8S3583C13D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n64_N8S3583C13D0Ev,_ZTv0_n32_N8S3583C13D0Ev),
+};
+extern void ABISELECT(_ZTvn8_n64_N8S3583C13D1Ev,_ZTvn4_n32_N8S3583C13D1Ev)();
+extern void ABISELECT(_ZTvn8_n64_N8S3583C13D0Ev,_ZTvn4_n32_N8S3583C13D0Ev)();
+static  VTBL_ENTRY _tg__ZTV10S3583C6_nt7S3583C9__A2__8S3583C138S3583C15__8S3583C24[] = {
+  ABISELECT(-120,-60),
+  (VTBL_ENTRY)&(_ZTI8S3583C13[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTvn8_n64_N8S3583C13D1Ev,_ZTvn4_n32_N8S3583C13D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTvn8_n64_N8S3583C13D0Ev,_ZTvn4_n32_N8S3583C13D0Ev),
+};
+extern void ABISELECT(_ZTv0_n40_N8S3583C13D1Ev,_ZTv0_n20_N8S3583C13D1Ev)();
+extern void ABISELECT(_ZThn144_N8S3583C13D1Ev,_ZThn72_N8S3583C13D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n40_N8S3583C13D0Ev,_ZTv0_n20_N8S3583C13D0Ev)();
+extern void ABISELECT(_ZThn144_N8S3583C13D0Ev,_ZThn72_N8S3583C13D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV7S3583C5__A1__8S3583C138S3583C15__8S3583C24[] = {
+  ABISELECT(-144,-72),
+  ABISELECT(16,8),
+  ABISELECT(-64,-32),
+  ABISELECT(-144,-72),
+  (VTBL_ENTRY)&(_ZTI8S3583C13[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n40_N8S3583C13D1Ev,_ZTv0_n20_N8S3583C13D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n40_N8S3583C13D0Ev,_ZTv0_n20_N8S3583C13D0Ev),
+};
+extern void _ZN7S3583C9D1Ev();
+extern void _ZN7S3583C9D0Ev();
+static  VTBL_ENTRY _tg__ZTV7S3583C98S3583C15__A1__8S3583C24[] = {
+  ABISELECT(56,28),
+  ABISELECT(120,60),
+  ABISELECT(40,20),
+  ABISELECT(104,52),
+  ABISELECT(32,16),
+  0,
+  (VTBL_ENTRY)&(_ZTI7S3583C9[0]),
+  (VTBL_ENTRY)&_ZN7S3583C9D1Ev,
+  (VTBL_ENTRY)&_ZN7S3583C9D0Ev,
+};
+extern void ABISELECT(_ZTv0_n24_N7S3583C9D1Ev,_ZTv0_n12_N7S3583C9D1Ev)();
+extern void ABISELECT(_ZThn32_N7S3583C9D1Ev,_ZThn16_N7S3583C9D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N7S3583C9D0Ev,_ZTv0_n12_N7S3583C9D0Ev)();
+extern void ABISELECT(_ZThn32_N7S3583C9D0Ev,_ZThn16_N7S3583C9D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV10S3583C4_nt__7S3583C98S3583C15__A1__8S3583C24[] = {
+  ABISELECT(-32,-16),
+  ABISELECT(-32,-16),
+  (VTBL_ENTRY)&(_ZTI7S3583C9[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C9D1Ev,_ZTv0_n12_N7S3583C9D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C9D0Ev,_ZTv0_n12_N7S3583C9D0Ev),
+};
+extern void ABISELECT(_ZTv0_n40_N7S3583C9D1Ev,_ZTv0_n20_N7S3583C9D1Ev)();
+extern void ABISELECT(_ZThn104_N7S3583C9D1Ev,_ZThn52_N7S3583C9D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n40_N7S3583C9D0Ev,_ZTv0_n20_N7S3583C9D0Ev)();
+extern void ABISELECT(_ZThn104_N7S3583C9D0Ev,_ZThn52_N7S3583C9D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV7S3583C5__7S3583C98S3583C15__A1__8S3583C24[] = {
+  ABISELECT(-104,-52),
+  ABISELECT(16,8),
+  ABISELECT(-64,-32),
+  ABISELECT(-104,-52),
+  (VTBL_ENTRY)&(_ZTI7S3583C9[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n40_N7S3583C9D1Ev,_ZTv0_n20_N7S3583C9D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n40_N7S3583C9D0Ev,_ZTv0_n20_N7S3583C9D0Ev),
+};
+extern void ABISELECT(_ZTv0_n24_N7S3583C9D1Ev,_ZTv0_n12_N7S3583C9D1Ev)();
+extern void ABISELECT(_ZThn40_N7S3583C9D1Ev,_ZThn20_N7S3583C9D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N7S3583C9D0Ev,_ZTv0_n12_N7S3583C9D0Ev)();
+extern void ABISELECT(_ZThn40_N7S3583C9D0Ev,_ZThn20_N7S3583C9D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV10S3583C6_nt__A1__7S3583C98S3583C15__A1__8S3583C24[] = {
+  ABISELECT(-40,-20),
+  ABISELECT(-40,-20),
+  (VTBL_ENTRY)&(_ZTI7S3583C9[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C9D1Ev,_ZTv0_n12_N7S3583C9D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C9D0Ev,_ZTv0_n12_N7S3583C9D0Ev),
+};
+extern void ABISELECT(_ZTv0_n24_N7S3583C9D1Ev,_ZTv0_n12_N7S3583C9D1Ev)();
+extern void ABISELECT(_ZThn120_N7S3583C9D1Ev,_ZThn60_N7S3583C9D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N7S3583C9D0Ev,_ZTv0_n12_N7S3583C9D0Ev)();
+extern void ABISELECT(_ZThn120_N7S3583C9D0Ev,_ZThn60_N7S3583C9D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV7S3583C7__A1__7S3583C98S3583C15__A1__8S3583C24[] = {
+  ABISELECT(-120,-60),
+  ABISELECT(-120,-60),
+  (VTBL_ENTRY)&(_ZTI7S3583C9[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C9D1Ev,_ZTv0_n12_N7S3583C9D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C9D0Ev,_ZTv0_n12_N7S3583C9D0Ev),
+};
+extern void ABISELECT(_ZTv0_n32_N7S3583C9D1Ev,_ZTv0_n16_N7S3583C9D1Ev)();
+extern void ABISELECT(_ZThn56_N7S3583C9D1Ev,_ZThn28_N7S3583C9D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n32_N7S3583C9D0Ev,_ZTv0_n16_N7S3583C9D0Ev)();
+extern void ABISELECT(_ZThn56_N7S3583C9D0Ev,_ZThn28_N7S3583C9D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV8S3583C10__7S3583C98S3583C15__A1__8S3583C24[] = {
+  ABISELECT(-56,-28),
+  ABISELECT(-16,-8),
+  ABISELECT(-56,-28),
+  (VTBL_ENTRY)&(_ZTI7S3583C9[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n32_N7S3583C9D1Ev,_ZTv0_n16_N7S3583C9D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n32_N7S3583C9D0Ev,_ZTv0_n16_N7S3583C9D0Ev),
+};
+extern void ABISELECT(_ZTvn8_n32_N7S3583C9D1Ev,_ZTvn4_n16_N7S3583C9D1Ev)();
+extern void ABISELECT(_ZTvn8_n32_N7S3583C9D0Ev,_ZTvn4_n16_N7S3583C9D0Ev)();
+static  VTBL_ENTRY _tg__ZTV7S3583C78S3583C10__A2__7S3583C98S3583C15__A1__8S3583C24[] = {
+  ABISELECT(-64,-32),
+  (VTBL_ENTRY)&(_ZTI7S3583C9[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTvn8_n32_N7S3583C9D1Ev,_ZTvn4_n16_N7S3583C9D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTvn8_n32_N7S3583C9D0Ev,_ZTvn4_n16_N7S3583C9D0Ev),
+};
+extern void ABISELECT(_ZThn8_N8S3583C15D1Ev,_ZThn4_N8S3583C15D1Ev)();
+extern void ABISELECT(_ZThn8_N8S3583C15D0Ev,_ZThn4_N8S3583C15D0Ev)();
+extern void _ZN8S3583C132v1Ev();
+static  VTBL_ENTRY _tg__ZTV8S3583C13__8S3583C15__8S3583C24[] = {
+  ABISELECT(144,72),
+  ABISELECT(112,56),
+  ABISELECT(96,48),
+  ABISELECT(72,36),
+  ABISELECT(160,80),
+  ABISELECT(80,40),
+  ABISELECT(-8,-4),
+  (VTBL_ENTRY)&(_ZTI8S3583C15[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZThn8_N8S3583C15D1Ev,_ZThn4_N8S3583C15D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZThn8_N8S3583C15D0Ev,_ZThn4_N8S3583C15D0Ev),
+  (VTBL_ENTRY)&_ZN8S3583C132v1Ev,
+};
+extern void ABISELECT(_ZTv0_n32_N8S3583C15D1Ev,_ZTv0_n16_N8S3583C15D1Ev)();
+extern void ABISELECT(_ZThn104_N8S3583C15D1Ev,_ZThn52_N8S3583C15D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n32_N8S3583C15D0Ev,_ZTv0_n16_N8S3583C15D0Ev)();
+extern void ABISELECT(_ZThn104_N8S3583C15D0Ev,_ZThn52_N8S3583C15D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV8S3583C10__8S3583C15__8S3583C24[] = {
+  ABISELECT(-104,-52),
+  ABISELECT(-16,-8),
+  ABISELECT(-104,-52),
+  (VTBL_ENTRY)&(_ZTI8S3583C15[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n32_N8S3583C15D1Ev,_ZTv0_n16_N8S3583C15D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n32_N8S3583C15D0Ev,_ZTv0_n16_N8S3583C15D0Ev),
+};
+extern void ABISELECT(_ZTv0_n24_N8S3583C15D1Ev,_ZTv0_n12_N8S3583C15D1Ev)();
+extern void ABISELECT(_ZThn88_N8S3583C15D1Ev,_ZThn44_N8S3583C15D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N8S3583C15D0Ev,_ZTv0_n12_N8S3583C15D0Ev)();
+extern void ABISELECT(_ZThn88_N8S3583C15D0Ev,_ZThn44_N8S3583C15D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV10S3583C6_nt__8S3583C15__8S3583C24[] = {
+  ABISELECT(-88,-44),
+  ABISELECT(-88,-44),
+  (VTBL_ENTRY)&(_ZTI8S3583C15[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C15D1Ev,_ZTv0_n12_N8S3583C15D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C15D0Ev,_ZTv0_n12_N8S3583C15D0Ev),
+};
+extern void ABISELECT(_ZTvn8_n32_N8S3583C15D1Ev,_ZTvn4_n16_N8S3583C15D1Ev)();
+extern void ABISELECT(_ZTvn8_n32_N8S3583C15D0Ev,_ZTvn4_n16_N8S3583C15D0Ev)();
+static  VTBL_ENTRY _tg__ZTV7S3583C78S3583C10__A1__8S3583C15__8S3583C24[] = {
+  ABISELECT(-112,-56),
+  (VTBL_ENTRY)&(_ZTI8S3583C15[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTvn8_n32_N8S3583C15D1Ev,_ZTvn4_n16_N8S3583C15D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTvn8_n32_N8S3583C15D0Ev,_ZTvn4_n16_N8S3583C15D0Ev),
+};
+extern void ABISELECT(_ZTv0_n24_N8S3583C15D1Ev,_ZTv0_n12_N8S3583C15D1Ev)();
+extern void ABISELECT(_ZThn168_N8S3583C15D1Ev,_ZThn84_N8S3583C15D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N8S3583C15D0Ev,_ZTv0_n12_N8S3583C15D0Ev)();
+extern void ABISELECT(_ZThn168_N8S3583C15D0Ev,_ZThn84_N8S3583C15D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV8S3583C16__8S3583C15__8S3583C24[] = {
+  0,
+  ABISELECT(-80,-40),
+  ABISELECT(-16,-8),
+  ABISELECT(-168,-84),
+  ABISELECT(-168,-84),
+  (VTBL_ENTRY)&(_ZTI8S3583C15[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C15D1Ev,_ZTv0_n12_N8S3583C15D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C15D0Ev,_ZTv0_n12_N8S3583C15D0Ev),
+};
+extern void ABISELECT(_ZTv0_n24_N8S3583C15D1Ev,_ZTv0_n12_N8S3583C15D1Ev)();
+extern void ABISELECT(_ZThn80_N8S3583C15D1Ev,_ZThn40_N8S3583C15D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N8S3583C15D0Ev,_ZTv0_n12_N8S3583C15D0Ev)();
+extern void ABISELECT(_ZThn80_N8S3583C15D0Ev,_ZThn40_N8S3583C15D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV10S3583C4_nt__A1__8S3583C15__8S3583C24[] = {
+  ABISELECT(-80,-40),
+  ABISELECT(-80,-40),
+  (VTBL_ENTRY)&(_ZTI8S3583C15[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C15D1Ev,_ZTv0_n12_N8S3583C15D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C15D0Ev,_ZTv0_n12_N8S3583C15D0Ev),
+};
+extern void ABISELECT(_ZTv0_n64_N8S3583C15D1Ev,_ZTv0_n32_N8S3583C15D1Ev)();
+extern void ABISELECT(_ZThn120_N8S3583C15D1Ev,_ZThn60_N8S3583C15D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n64_N8S3583C15D0Ev,_ZTv0_n32_N8S3583C15D0Ev)();
+extern void ABISELECT(_ZThn120_N8S3583C15D0Ev,_ZThn60_N8S3583C15D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV7S3583C9__8S3583C15__8S3583C24[] = {
+  ABISELECT(-120,-60),
+  ABISELECT(-16,-8),
+  ABISELECT(48,24),
+  ABISELECT(-32,-16),
+  ABISELECT(32,16),
+  ABISELECT(-40,-20),
+  ABISELECT(-120,-60),
+  (VTBL_ENTRY)&(_ZTI8S3583C15[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n64_N8S3583C15D1Ev,_ZTv0_n32_N8S3583C15D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n64_N8S3583C15D0Ev,_ZTv0_n32_N8S3583C15D0Ev),
+};
+extern void ABISELECT(_ZTvn8_n64_N8S3583C15D1Ev,_ZTvn4_n32_N8S3583C15D1Ev)();
+extern void ABISELECT(_ZTvn8_n64_N8S3583C15D0Ev,_ZTvn4_n32_N8S3583C15D0Ev)();
+static  VTBL_ENTRY _tg__ZTV10S3583C6_nt7S3583C9__A2__8S3583C15__8S3583C24[] = {
+  ABISELECT(-128,-64),
+  (VTBL_ENTRY)&(_ZTI8S3583C15[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTvn8_n64_N8S3583C15D1Ev,_ZTvn4_n32_N8S3583C15D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTvn8_n64_N8S3583C15D0Ev,_ZTvn4_n32_N8S3583C15D0Ev),
+};
+extern void ABISELECT(_ZTv0_n40_N8S3583C15D1Ev,_ZTv0_n20_N8S3583C15D1Ev)();
+extern void ABISELECT(_ZThn152_N8S3583C15D1Ev,_ZThn76_N8S3583C15D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n40_N8S3583C15D0Ev,_ZTv0_n20_N8S3583C15D0Ev)();
+extern void ABISELECT(_ZThn152_N8S3583C15D0Ev,_ZThn76_N8S3583C15D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV7S3583C5__A1__8S3583C15__8S3583C24[] = {
+  ABISELECT(-152,-76),
+  ABISELECT(16,8),
+  ABISELECT(-64,-32),
+  ABISELECT(-152,-76),
+  (VTBL_ENTRY)&(_ZTI8S3583C15[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n40_N8S3583C15D1Ev,_ZTv0_n20_N8S3583C15D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n40_N8S3583C15D0Ev,_ZTv0_n20_N8S3583C15D0Ev),
+};
+extern void ABISELECT(_ZThn48_N8S3583C15D1Ev,_ZThn24_N8S3583C15D1Ev)();
+extern void ABISELECT(_ZThn48_N8S3583C15D0Ev,_ZThn24_N8S3583C15D0Ev)();
+static  VTBL_ENTRY _tg__ZTV7S3583C9__A__8S3583C15__8S3583C24[] = {
+  ABISELECT(56,28),
+  ABISELECT(120,60),
+  ABISELECT(40,20),
+  ABISELECT(104,52),
+  ABISELECT(32,16),
+  ABISELECT(-48,-24),
+  (VTBL_ENTRY)&(_ZTI8S3583C15[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZThn48_N8S3583C15D1Ev,_ZThn24_N8S3583C15D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZThn48_N8S3583C15D0Ev,_ZThn24_N8S3583C15D0Ev),
+};
+extern void _ZN8S3583C10D1Ev();
+extern void _ZN8S3583C10D0Ev();
+static  VTBL_ENTRY _tg__ZTV8S3583C10__8S3583C24[] = {
+  ABISELECT(-16,-8),
+  0,
+  (VTBL_ENTRY)&(_ZTI8S3583C10[0]),
+  (VTBL_ENTRY)&_ZN8S3583C10D1Ev,
+  (VTBL_ENTRY)&_ZN8S3583C10D0Ev,
+};
+extern void ABISELECT(_ZTv0_n24_N8S3583C10D1Ev,_ZTv0_n12_N8S3583C10D1Ev)();
+extern void ABISELECT(_ZTv0_n24_N8S3583C10D0Ev,_ZTv0_n12_N8S3583C10D0Ev)();
+static  VTBL_ENTRY _tg__ZTV10S3583C6_nt__8S3583C10__8S3583C24[] = {
+  ABISELECT(16,8),
+  ABISELECT(16,8),
+  (VTBL_ENTRY)&(_ZTI8S3583C10[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C10D1Ev,_ZTv0_n12_N8S3583C10D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C10D0Ev,_ZTv0_n12_N8S3583C10D0Ev),
+};
+extern void _ZN7S3583C9D1Ev();
+extern void _ZN7S3583C9D0Ev();
+static  VTBL_ENTRY _tg__ZTV7S3583C9__8S3583C24[] = {
+  ABISELECT(-16,-8),
+  ABISELECT(48,24),
+  ABISELECT(-32,-16),
+  ABISELECT(32,16),
+  ABISELECT(-40,-20),
+  0,
+  (VTBL_ENTRY)&(_ZTI7S3583C9[0]),
+  (VTBL_ENTRY)&_ZN7S3583C9D1Ev,
+  (VTBL_ENTRY)&_ZN7S3583C9D0Ev,
+};
+extern void ABISELECT(_ZTv0_n24_N7S3583C9D1Ev,_ZTv0_n12_N7S3583C9D1Ev)();
+extern void ABISELECT(_ZTv0_n24_N7S3583C9D0Ev,_ZTv0_n12_N7S3583C9D0Ev)();
+static  VTBL_ENTRY _tg__ZTV10S3583C4_nt__7S3583C9__8S3583C24[] = {
+  ABISELECT(40,20),
+  ABISELECT(40,20),
+  (VTBL_ENTRY)&(_ZTI7S3583C9[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C9D1Ev,_ZTv0_n12_N7S3583C9D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C9D0Ev,_ZTv0_n12_N7S3583C9D0Ev),
+};
+extern void ABISELECT(_ZTv0_n40_N7S3583C9D1Ev,_ZTv0_n20_N7S3583C9D1Ev)();
+extern void ABISELECT(_ZThn32_N7S3583C9D1Ev,_ZThn16_N7S3583C9D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n40_N7S3583C9D0Ev,_ZTv0_n20_N7S3583C9D0Ev)();
+extern void ABISELECT(_ZThn32_N7S3583C9D0Ev,_ZThn16_N7S3583C9D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV7S3583C5__7S3583C9__8S3583C24[] = {
+  ABISELECT(-32,-16),
+  ABISELECT(16,8),
+  ABISELECT(-64,-32),
+  ABISELECT(-32,-16),
+  (VTBL_ENTRY)&(_ZTI7S3583C9[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n40_N7S3583C9D1Ev,_ZTv0_n20_N7S3583C9D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n40_N7S3583C9D0Ev,_ZTv0_n20_N7S3583C9D0Ev),
+};
+extern void ABISELECT(_ZTv0_n24_N7S3583C9D1Ev,_ZTv0_n12_N7S3583C9D1Ev)();
+extern void ABISELECT(_ZTv0_n24_N7S3583C9D0Ev,_ZTv0_n12_N7S3583C9D0Ev)();
+static  VTBL_ENTRY _tg__ZTV10S3583C6_nt__A1__7S3583C9__8S3583C24[] = {
+  ABISELECT(32,16),
+  ABISELECT(32,16),
+  (VTBL_ENTRY)&(_ZTI7S3583C9[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C9D1Ev,_ZTv0_n12_N7S3583C9D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C9D0Ev,_ZTv0_n12_N7S3583C9D0Ev),
+};
+extern void ABISELECT(_ZTv0_n24_N7S3583C9D1Ev,_ZTv0_n12_N7S3583C9D1Ev)();
+extern void ABISELECT(_ZThn48_N7S3583C9D1Ev,_ZThn24_N7S3583C9D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N7S3583C9D0Ev,_ZTv0_n12_N7S3583C9D0Ev)();
+extern void ABISELECT(_ZThn48_N7S3583C9D0Ev,_ZThn24_N7S3583C9D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV7S3583C7__A1__7S3583C9__8S3583C24[] = {
+  ABISELECT(-48,-24),
+  ABISELECT(-48,-24),
+  (VTBL_ENTRY)&(_ZTI7S3583C9[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C9D1Ev,_ZTv0_n12_N7S3583C9D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C9D0Ev,_ZTv0_n12_N7S3583C9D0Ev),
+};
+extern void ABISELECT(_ZTv0_n32_N7S3583C9D1Ev,_ZTv0_n16_N7S3583C9D1Ev)();
+extern void ABISELECT(_ZTv0_n32_N7S3583C9D0Ev,_ZTv0_n16_N7S3583C9D0Ev)();
+static  VTBL_ENTRY _tg__ZTV8S3583C10__7S3583C9__8S3583C24[] = {
+  ABISELECT(16,8),
+  ABISELECT(-16,-8),
+  ABISELECT(16,8),
+  (VTBL_ENTRY)&(_ZTI7S3583C9[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n32_N7S3583C9D1Ev,_ZTv0_n16_N7S3583C9D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n32_N7S3583C9D0Ev,_ZTv0_n16_N7S3583C9D0Ev),
+};
+extern void ABISELECT(_ZTvn8_n32_N7S3583C9D1Ev,_ZTvn4_n16_N7S3583C9D1Ev)();
+extern void ABISELECT(_ZTvn8_n32_N7S3583C9D0Ev,_ZTvn4_n16_N7S3583C9D0Ev)();
+static  VTBL_ENTRY _tg__ZTV7S3583C78S3583C10__A2__7S3583C9__8S3583C24[] = {
+  ABISELECT(8,4),
+  (VTBL_ENTRY)&(_ZTI7S3583C9[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTvn8_n32_N7S3583C9D1Ev,_ZTvn4_n16_N7S3583C9D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTvn8_n32_N7S3583C9D0Ev,_ZTvn4_n16_N7S3583C9D0Ev),
+};
+extern void _ZN7S3583C5D1Ev();
+extern void _ZN7S3583C5D0Ev();
+static  VTBL_ENTRY _tg__ZTV7S3583C5__A2__8S3583C24[] = {
+  ABISELECT(16,8),
+  ABISELECT(-64,-32),
+  0,
+  (VTBL_ENTRY)&(_ZTI7S3583C5[0]),
+  (VTBL_ENTRY)&_ZN7S3583C5D1Ev,
+  (VTBL_ENTRY)&_ZN7S3583C5D0Ev,
+};
+extern void ABISELECT(_ZTv0_n24_N7S3583C5D1Ev,_ZTv0_n12_N7S3583C5D1Ev)();
+extern void ABISELECT(_ZTv0_n24_N7S3583C5D0Ev,_ZTv0_n12_N7S3583C5D0Ev)();
+static  VTBL_ENTRY _tg__ZTV10S3583C6_nt__7S3583C5__A2__8S3583C24[] = {
+  ABISELECT(64,32),
+  ABISELECT(64,32),
+  (VTBL_ENTRY)&(_ZTI7S3583C5[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C5D1Ev,_ZTv0_n12_N7S3583C5D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C5D0Ev,_ZTv0_n12_N7S3583C5D0Ev),
+};
+extern void ABISELECT(_ZTv0_n24_N7S3583C5D1Ev,_ZTv0_n12_N7S3583C5D1Ev)();
+extern void ABISELECT(_ZThn16_N7S3583C5D1Ev,_ZThn8_N7S3583C5D1Ev)() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N7S3583C5D0Ev,_ZTv0_n12_N7S3583C5D0Ev)();
+extern void ABISELECT(_ZThn16_N7S3583C5D0Ev,_ZThn8_N7S3583C5D0Ev)() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV7S3583C7__7S3583C5__A2__8S3583C24[] = {
+  ABISELECT(-16,-8),
+  ABISELECT(-16,-8),
+  (VTBL_ENTRY)&(_ZTI7S3583C5[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C5D1Ev,_ZTv0_n12_N7S3583C5D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N7S3583C5D0Ev,_ZTv0_n12_N7S3583C5D0Ev),
+};
+extern void ABISELECT(_ZTv0_n24_N8S3583C16D1Ev,_ZTv0_n12_N8S3583C16D1Ev)();
+extern void _ZN8S3583C16D1Ev() __attribute__((weak));
+extern void ABISELECT(_ZTv0_n24_N8S3583C16D0Ev,_ZTv0_n12_N8S3583C16D0Ev)();
+extern void _ZN8S3583C16D0Ev() __attribute__((weak));
+static  VTBL_ENTRY _tg__ZTV8S3583C16__8S3583C24[] = {
+  0,
+  ABISELECT(-80,-40),
+  ABISELECT(-16,-8),
+  0,
+  0,
+  (VTBL_ENTRY)&(_ZTI8S3583C16[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C16D1Ev,_ZTv0_n12_N8S3583C16D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C16D0Ev,_ZTv0_n12_N8S3583C16D0Ev),
+};
+extern void ABISELECT(_ZTv0_n40_N8S3583C16D1Ev,_ZTv0_n20_N8S3583C16D1Ev)();
+extern void ABISELECT(_ZTv0_n40_N8S3583C16D0Ev,_ZTv0_n20_N8S3583C16D0Ev)();
+static  VTBL_ENTRY _tg__ZTV7S3583C5__8S3583C16__8S3583C24[] = {
+  ABISELECT(16,8),
+  ABISELECT(16,8),
+  ABISELECT(-64,-32),
+  ABISELECT(16,8),
+  (VTBL_ENTRY)&(_ZTI8S3583C16[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n40_N8S3583C16D1Ev,_ZTv0_n20_N8S3583C16D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n40_N8S3583C16D0Ev,_ZTv0_n20_N8S3583C16D0Ev),
+};
+extern void ABISELECT(_ZTv0_n24_N8S3583C16D1Ev,_ZTv0_n12_N8S3583C16D1Ev)();
+extern void ABISELECT(_ZTv0_n24_N8S3583C16D0Ev,_ZTv0_n12_N8S3583C16D0Ev)();
+static  VTBL_ENTRY _tg__ZTV10S3583C6_nt__8S3583C16__8S3583C24[] = {
+  ABISELECT(80,40),
+  ABISELECT(80,40),
+  (VTBL_ENTRY)&(_ZTI8S3583C16[0]),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C16D1Ev,_ZTv0_n12_N8S3583C16D1Ev),
+  (VTBL_ENTRY)&ABISELECT(_ZTv0_n24_N8S3583C16D0Ev,_ZTv0_n12_N8S3583C16D0Ev),
+};
+static  VTT_ENTRY vtt_S3583C24[] = {
+  {&(_ZTV8S3583C24[9]),  9,103},
+  {&(_tg__ZTV7S3583C3__8S3583C24[5]),  5,7},
+  {&(_tg__ZTV7S3583C57S3583C3__8S3583C24[4]),  4,6},
+  {&(_tg__ZTV10S3583C6_nt__7S3583C57S3583C3__8S3583C24[3]),  3,5},
+  {&(_tg__ZTV7S3583C7__7S3583C57S3583C3__8S3583C24[3]),  3,5},
+  {&(_tg__ZTV10S3583C4_nt__7S3583C3__8S3583C24[3]),  3,5},
+  {&(_tg__ZTV10S3583C6_nt__7S3583C3__8S3583C24[3]),  3,5},
+  {&(_tg__ZTV7S3583C7__7S3583C3__8S3583C24[3]),  3,5},
+  {&(_tg__ZTV8S3583C15__8S3583C24[9]),  9,11},
+  {&(_tg__ZTV8S3583C138S3583C15__8S3583C24[8]),  8,11},
+  {&(_tg__ZTV7S3583C38S3583C138S3583C15__A1__8S3583C24[5]),  5,7},
+  {&(_tg__ZTV7S3583C57S3583C38S3583C138S3583C15__A1__8S3583C24[4]),  4,6},
+  {&(_tg__ZTV10S3583C6_nt__7S3583C57S3583C38S3583C138S3583C15__A1__8S3583C24[3]),  3,5},
+  {&(_tg__ZTV7S3583C7__7S3583C57S3583C38S3583C138S3583C15__A1__8S3583C24[3]),  3,5},
+  {&(_tg__ZTV10S3583C4_nt__7S3583C38S3583C138S3583C15__A1__8S3583C24[3]),  3,5},
+  {&(_tg__ZTV10S3583C6_nt__7S3583C38S3583C138S3583C15__A1__8S3583C24[3]),  3,5},
+  {&(_tg__ZTV7S3583C7__7S3583C38S3583C138S3583C15__A1__8S3583C24[3]),  3,5},
+  {&(_tg__ZTV8S3583C10__8S3583C138S3583C15__8S3583C24[4]),  4,6},
+  {&(_tg__ZTV10S3583C6_nt__8S3583C138S3583C15__8S3583C24[3]),  3,5},
+  {&(_tg__ZTV7S3583C78S3583C10__8S3583C138S3583C15__8S3583C24[2]),  2,4},
+  {&(_tg__ZTV7S3583C7__A1__8S3583C138S3583C15__8S3583C24[3]),  3,5},
+  {&(_tg__ZTV10S3583C4_nt__A1__8S3583C138S3583C15__8S3583C24[3]),  3,5},
+  {&(_tg__ZTV7S3583C9__8S3583C138S3583C15__8S3583C24[8]),  8,10},
+  {&(_tg__ZTV10S3583C6_nt7S3583C9__A2__8S3583C138S3583C15__8S3583C24[2]),  2,4},
+  {&(_tg__ZTV7S3583C5__A1__8S3583C138S3583C15__8S3583C24[5]),  5,7},
+  {&(_tg__ZTV7S3583C98S3583C15__A1__8S3583C24[7]),  7,9},
+  {&(_tg__ZTV10S3583C4_nt__7S3583C98S3583C15__A1__8S3583C24[3]),  3,5},
+  {&(_tg__ZTV7S3583C5__7S3583C98S3583C15__A1__8S3583C24[5]),  5,7},
+  {&(_tg__ZTV10S3583C6_nt__A1__7S3583C98S3583C15__A1__8S3583C24[3]),  3,5},
+  {&(_tg__ZTV7S3583C7__A1__7S3583C98S3583C15__A1__8S3583C24[3]),  3,5},
+  {&(_tg__ZTV8S3583C10__7S3583C98S3583C15__A1__8S3583C24[4]),  4,6},
+  {&(_tg__ZTV7S3583C78S3583C10__A2__7S3583C98S3583C15__A1__8S3583C24[2]),  2,4},
+  {&(_tg__ZTV8S3583C13__8S3583C15__8S3583C24[8]),  8,11},
+  {&(_tg__ZTV8S3583C10__8S3583C15__8S3583C24[4]),  4,6},
+  {&(_tg__ZTV10S3583C6_nt__8S3583C15__8S3583C24[3]),  3,5},
+  {&(_tg__ZTV7S3583C78S3583C10__A1__8S3583C15__8S3583C24[2]),  2,4},
+  {&(_tg__ZTV8S3583C16__8S3583C15__8S3583C24[6]),  6,8},
+  {&(_tg__ZTV10S3583C4_nt__A1__8S3583C15__8S3583C24[3]),  3,5},
+  {&(_tg__ZTV7S3583C9__8S3583C15__8S3583C24[8]),  8,10},
+  {&(_tg__ZTV10S3583C6_nt7S3583C9__A2__8S3583C15__8S3583C24[2]),  2,4},
+  {&(_tg__ZTV7S3583C5__A1__8S3583C15__8S3583C24[5]),  5,7},
+  {&(_tg__ZTV8S3583C16__8S3583C15__8S3583C24[6]),  6,8},
+  {&(_tg__ZTV7S3583C9__A__8S3583C15__8S3583C24[7]),  7,9},
+  {&(_ZTV8S3583C24[57]),  57,103},
+  {&(_ZTV8S3583C24[62]),  62,103},
+  {&(_ZTV8S3583C24[101]),  101,103},
+  {&(_ZTV8S3583C24[24]),  24,103},
+  {&(_ZTV8S3583C24[34]),  34,103},
+  {&(_ZTV8S3583C24[68]),  68,103},
+  {&(_ZTV8S3583C24[72]),  72,103},
+  {&(_ZTV8S3583C24[82]),  82,103},
+  {&(_ZTV8S3583C24[86]),  86,103},
+  {&(_ZTV8S3583C24[93]),  93,103},
+  {&(_ZTV8S3583C24[101]),  101,103},
+  {&(_ZTV8S3583C24[48]),  48,103},
+  {&(_tg__ZTV8S3583C10__8S3583C24[3]),  3,5},
+  {&(_tg__ZTV10S3583C6_nt__8S3583C10__8S3583C24[3]),  3,5},
+  {&(_tg__ZTV7S3583C9__8S3583C24[7]),  7,9},
+  {&(_tg__ZTV10S3583C4_nt__7S3583C9__8S3583C24[3]),  3,5},
+  {&(_tg__ZTV7S3583C5__7S3583C9__8S3583C24[5]),  5,7},
+  {&(_tg__ZTV10S3583C6_nt__A1__7S3583C9__8S3583C24[3]),  3,5},
+  {&(_tg__ZTV7S3583C7__A1__7S3583C9__8S3583C24[3]),  3,5},
+  {&(_tg__ZTV8S3583C10__7S3583C9__8S3583C24[4]),  4,6},
+  {&(_tg__ZTV7S3583C78S3583C10__A2__7S3583C9__8S3583C24[2]),  2,4},
+  {&(_tg__ZTV7S3583C5__A2__8S3583C24[4]),  4,6},
+  {&(_tg__ZTV10S3583C6_nt__7S3583C5__A2__8S3583C24[3]),  3,5},
+  {&(_tg__ZTV7S3583C7__7S3583C5__A2__8S3583C24[3]),  3,5},
+  {&(_tg__ZTV8S3583C16__8S3583C24[6]),  6,8},
+  {&(_tg__ZTV7S3583C5__8S3583C16__8S3583C24[5]),  5,7},
+  {&(_tg__ZTV10S3583C6_nt__8S3583C16__8S3583C24[3]),  3,5},
+  {&(_tg__ZTV8S3583C16__8S3583C24[6]),  6,8},
+};
+extern VTBL_ENTRY _ZTI8S3583C24[];
+extern  VTBL_ENTRY _ZTV8S3583C24[];
+extern  VTBL_ENTRY * __attribute__((weak))_ZTT8S3583C24[];
+static VTBL_ENTRY alt_thunk_names13[] = {
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n24_N8S3583C16D0Ev,_ZTv0_n12_N8S3583C16D0Ev), // 
+  (VTBL_ENTRY)_ZN8S3583C16D0Ev,
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n24_N8S3583C16D1Ev,_ZTv0_n12_N8S3583C16D1Ev), // 
+  (VTBL_ENTRY)_ZN8S3583C16D1Ev,
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n40_N8S3583C15D0Ev,_ZTv0_n20_N8S3583C15D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn152_N8S3583C15D0Ev,_ZThn76_N8S3583C15D0Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n40_N8S3583C15D1Ev,_ZTv0_n20_N8S3583C15D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn152_N8S3583C15D1Ev,_ZThn76_N8S3583C15D1Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n64_N8S3583C15D0Ev,_ZTv0_n32_N8S3583C15D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn120_N8S3583C15D0Ev,_ZThn60_N8S3583C15D0Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n64_N8S3583C15D1Ev,_ZTv0_n32_N8S3583C15D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn120_N8S3583C15D1Ev,_ZThn60_N8S3583C15D1Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n24_N8S3583C15D0Ev,_ZTv0_n12_N8S3583C15D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn80_N8S3583C15D0Ev,_ZThn40_N8S3583C15D0Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn168_N8S3583C15D0Ev,_ZThn84_N8S3583C15D0Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn88_N8S3583C15D0Ev,_ZThn44_N8S3583C15D0Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n24_N8S3583C15D1Ev,_ZTv0_n12_N8S3583C15D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn80_N8S3583C15D1Ev,_ZThn40_N8S3583C15D1Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn168_N8S3583C15D1Ev,_ZThn84_N8S3583C15D1Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn88_N8S3583C15D1Ev,_ZThn44_N8S3583C15D1Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n32_N8S3583C15D0Ev,_ZTv0_n16_N8S3583C15D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn104_N8S3583C15D0Ev,_ZThn52_N8S3583C15D0Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n32_N8S3583C15D1Ev,_ZTv0_n16_N8S3583C15D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn104_N8S3583C15D1Ev,_ZThn52_N8S3583C15D1Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n32_N7S3583C9D0Ev,_ZTv0_n16_N7S3583C9D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn56_N7S3583C9D0Ev,_ZThn28_N7S3583C9D0Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n32_N7S3583C9D1Ev,_ZTv0_n16_N7S3583C9D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn56_N7S3583C9D1Ev,_ZThn28_N7S3583C9D1Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n40_N7S3583C9D0Ev,_ZTv0_n20_N7S3583C9D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn32_N7S3583C9D0Ev,_ZThn16_N7S3583C9D0Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn104_N7S3583C9D0Ev,_ZThn52_N7S3583C9D0Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n40_N7S3583C9D1Ev,_ZTv0_n20_N7S3583C9D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn32_N7S3583C9D1Ev,_ZThn16_N7S3583C9D1Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn104_N7S3583C9D1Ev,_ZThn52_N7S3583C9D1Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n24_N7S3583C9D0Ev,_ZTv0_n12_N7S3583C9D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn48_N7S3583C9D0Ev,_ZThn24_N7S3583C9D0Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn120_N7S3583C9D0Ev,_ZThn60_N7S3583C9D0Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn40_N7S3583C9D0Ev,_ZThn20_N7S3583C9D0Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn32_N7S3583C9D0Ev,_ZThn16_N7S3583C9D0Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n24_N7S3583C9D1Ev,_ZTv0_n12_N7S3583C9D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn48_N7S3583C9D1Ev,_ZThn24_N7S3583C9D1Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn120_N7S3583C9D1Ev,_ZThn60_N7S3583C9D1Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn40_N7S3583C9D1Ev,_ZThn20_N7S3583C9D1Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn32_N7S3583C9D1Ev,_ZThn16_N7S3583C9D1Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n40_N8S3583C13D0Ev,_ZTv0_n20_N8S3583C13D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn144_N8S3583C13D0Ev,_ZThn72_N8S3583C13D0Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n40_N8S3583C13D1Ev,_ZTv0_n20_N8S3583C13D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn144_N8S3583C13D1Ev,_ZThn72_N8S3583C13D1Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n64_N8S3583C13D0Ev,_ZTv0_n32_N8S3583C13D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn112_N8S3583C13D0Ev,_ZThn56_N8S3583C13D0Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n64_N8S3583C13D1Ev,_ZTv0_n32_N8S3583C13D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn112_N8S3583C13D1Ev,_ZThn56_N8S3583C13D1Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n24_N8S3583C13D0Ev,_ZTv0_n12_N8S3583C13D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn72_N8S3583C13D0Ev,_ZThn36_N8S3583C13D0Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn160_N8S3583C13D0Ev,_ZThn80_N8S3583C13D0Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn80_N8S3583C13D0Ev,_ZThn40_N8S3583C13D0Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n24_N8S3583C13D1Ev,_ZTv0_n12_N8S3583C13D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn72_N8S3583C13D1Ev,_ZThn36_N8S3583C13D1Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn160_N8S3583C13D1Ev,_ZThn80_N8S3583C13D1Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn80_N8S3583C13D1Ev,_ZThn40_N8S3583C13D1Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n32_N8S3583C13D0Ev,_ZTv0_n16_N8S3583C13D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn96_N8S3583C13D0Ev,_ZThn48_N8S3583C13D0Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n32_N8S3583C13D1Ev,_ZTv0_n16_N8S3583C13D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn96_N8S3583C13D1Ev,_ZThn48_N8S3583C13D1Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n24_N7S3583C3D0Ev,_ZTv0_n12_N7S3583C3D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn160_N7S3583C3D0Ev,_ZThn80_N7S3583C3D0Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn80_N7S3583C3D0Ev,_ZThn40_N7S3583C3D0Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn72_N7S3583C3D0Ev,_ZThn36_N7S3583C3D0Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn200_N7S3583C3D0Ev,_ZThn100_N7S3583C3D0Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn120_N7S3583C3D0Ev,_ZThn60_N7S3583C3D0Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn112_N7S3583C3D0Ev,_ZThn56_N7S3583C3D0Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n24_N7S3583C3D1Ev,_ZTv0_n12_N7S3583C3D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn160_N7S3583C3D1Ev,_ZThn80_N7S3583C3D1Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn80_N7S3583C3D1Ev,_ZThn40_N7S3583C3D1Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn72_N7S3583C3D1Ev,_ZThn36_N7S3583C3D1Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn200_N7S3583C3D1Ev,_ZThn100_N7S3583C3D1Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn120_N7S3583C3D1Ev,_ZThn60_N7S3583C3D1Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn112_N7S3583C3D1Ev,_ZThn56_N7S3583C3D1Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n24_N7S3583C5D0Ev,_ZTv0_n12_N7S3583C5D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn16_N7S3583C5D0Ev,_ZThn8_N7S3583C5D0Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn160_N7S3583C5D0Ev,_ZThn80_N7S3583C5D0Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn80_N7S3583C5D0Ev,_ZThn40_N7S3583C5D0Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn200_N7S3583C5D0Ev,_ZThn100_N7S3583C5D0Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn120_N7S3583C5D0Ev,_ZThn60_N7S3583C5D0Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n24_N7S3583C5D1Ev,_ZTv0_n12_N7S3583C5D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn16_N7S3583C5D1Ev,_ZThn8_N7S3583C5D1Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn160_N7S3583C5D1Ev,_ZThn80_N7S3583C5D1Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn80_N7S3583C5D1Ev,_ZThn40_N7S3583C5D1Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn200_N7S3583C5D1Ev,_ZThn100_N7S3583C5D1Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn120_N7S3583C5D1Ev,_ZThn60_N7S3583C5D1Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n40_N8S3583C24D0Ev,_ZTv0_n20_N8S3583C24D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn184_N8S3583C24D0Ev,_ZThn92_N8S3583C24D0Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n40_N8S3583C24D1Ev,_ZTv0_n20_N8S3583C24D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn184_N8S3583C24D1Ev,_ZThn92_N8S3583C24D1Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n64_N8S3583C24D0Ev,_ZTv0_n32_N8S3583C24D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn152_N8S3583C24D0Ev,_ZThn76_N8S3583C24D0Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n64_N8S3583C24D1Ev,_ZTv0_n32_N8S3583C24D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn152_N8S3583C24D1Ev,_ZThn76_N8S3583C24D1Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n32_N8S3583C24D0Ev,_ZTv0_n16_N8S3583C24D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn136_N8S3583C24D0Ev,_ZThn68_N8S3583C24D0Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n32_N8S3583C24D1Ev,_ZTv0_n16_N8S3583C24D1Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn136_N8S3583C24D1Ev,_ZThn68_N8S3583C24D1Ev),
+  ALT_NAMES_TERMINATOR,
+  (VTBL_ENTRY)ABISELECT(_ZTv0_n24_N8S3583C24D0Ev,_ZTv0_n12_N8S3583C24D0Ev), // 
+  (VTBL_ENTRY)ABISELECT(_ZThn200_N8S3583C24D0Ev,_ZThn100_N8S3583C24D0Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn120_N8S3583C24D0Ev,_ZThn60_N8S3583C24D0Ev),
+  (VTBL_ENTRY)ABISELECT(_ZThn112_N8S3583C24D0Ev,_ZThn56_N8S3583C24D0Ev),
+  ALT_NAMES_TERMINATOR,

[... 235301 lines stripped ...]




More information about the llvm-commits mailing list