added proper decostructor