Mapping Abstract Classes (part 1)