onstraints capture sub-type relationships between said element M and said objects O1 and O2 that must be preserved in order to preserve said original execution behavior of said program P; adding to the new class hierarchy H??? inheritance relationships based upon said set of type constraints, wherein said class hierarchy H??? includes classes Dl and D2, wherein D1 is a type for object O1 and D2 is