there is a lot of misalignment due to double virtual deconstructors and inheritance problems and just plain collecting incorrect data