dealloc added, code not updated to use yet