no need for a finalizer